Slide 9
Slide 9 text
note inc.
貢献2: インスタンス変数名とCキーワードの衝突回避
9
# コンパイルできるようになったコード
class KeywordIvar
def initialize
@if = 40
@iv_if = 1
end
def value
@if + @iv_if + 1
end
end
puts KeywordIvar.new.value
@if をCコードに変換すると、
Cの if と衝突してしまっていた
生成されるCのフィールド名に iv_ prefixを付
けた
例:
@if → iv_if
@iv_if → iv_iv_if