En general, ¿cómo puedo obtener una referencia a un objeto cuyo nombre tengo en una cadena?
Más específicamente, tengo una lista de los nombres de los parámetros (las variables miembro, creadas dinámicamente, por lo que no puedo referirme a ellas directamente).
Cada parámetro es un objeto que también tiene un from_s
método.
Quiero hacer algo como lo siguiente (que por supuesto no funciona ...):
define_method(:from_s) do | arg |
@ordered_parameter_names.each do | param |
instance_eval "field_ref = @#{param}"
field_ref.from_s(param)
end
end
fuente
Para obtener una variable de instancia del nombre de una variable de instancia, haga lo siguiente:
Esto devolverá el valor de la variable de instancia.
@paramName
fuente
:attr_reader varname
para poder acceder a las variables de una manera más limpia y menos detallada.