以下で受け取ったエラーに誰かが光を当ててくれることを願っています。親クラスでインスタンス変数を定義Nodeし、サブクラスでアクセスして変更したいのですが、アクセスAddSubNodeしようとすると、次の@codeエラーが表示されます。
'code': undefined method `<<' for nil:NilClass (NoMethodError)
Rubyの継承モデルを誤解しているのでしょうが、これならいけると思いました。
class Node
attr_accessor :code
def initialize
@code = []
end
end
class AddSubNode < Node
def initialize op, l, r
@op = op
@l = l
@r = r
end
def code
@code << 1 # error: `code': undefined method `<<' for nil:NilClass (NoMethodError)
@code
end
def to_s
"#{@l} #{@op} #{@right}"
end
end