Ogólnie, w jaki sposób mogę uzyskać odniesienie do obiektu, którego nazwę mam w ciągu?
Dokładniej, mam listę nazw parametrów (zmienne składowe - zbudowane dynamicznie, więc nie mogę się do nich odwoływać bezpośrednio).
Każdy parametr jest obiektem, który również ma from_s
metodę.
Chcę zrobić coś takiego (co oczywiście nie działa ...):
define_method(:from_s) do | arg |
@ordered_parameter_names.each do | param |
instance_eval "field_ref = @#{param}"
field_ref.from_s(param)
end
end
źródło
Aby pobrać zmienną instancji z nazwy zmiennej instancji, wykonaj:
To zwróci wartość zmiennej instancji
@paramName
źródło
:attr_reader varname
aby uzyskać dostęp do zmiennych w bardziej przejrzysty i mniej szczegółowy sposób.