Why can not set value to instance variable of Class?

class ParaList
attr_reader:classname
attr_writer:paralist
def initialize(name)
@classname = name
@paralist = Hash.new
end
end

$cellparalist = ParaList.new(“AAA”)

def MmlParse.addpara(paraclass,mo,mmlparalist)
a = Hash.new
a = paraclass.paralist
#Error:in addpara': undefined methodparalist’ for #<ParaList:0xc6eff5
b = Hash.new
b[“AAA”]=100;
a = b
}

You’ve defined an attr_writer for :paralist, but need an attr_reader for
it
in order for the method you are calling to be defined. You probably want
to
change attr_writer to attr_reader, or use attr_accessor if you really
want
it to still be writable. attr_writer defines a separate method called
paralist=. You can call that method using paraclass.paralist = foobar.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs