que estoy haciendo la clase SaaS Stanford, tratando de hacer la parte 5 de this assignmentRuby - El uso de class_eval para definir métodos
Estoy teniendo un momento muy difícil comprender este concepto, esto es lo que he intentado do:
class Class
def attr_accessor_with_history(attr_name)
attr_name = attr_name.to_s
attr_reader attr_name
attr_reader attr_name + '_history'
class_eval %Q'{def #{attr_name}(a);#{attr_name}_history.push(a) ; end;}'
end
end
probablemente estoy haciendo todo tipo de cosas mal, leer el libro de capítulo Ruby on metaprogramming y todavía no lo consigue, puede que alguien me ayude a comprender esto?
¿Esto realmente funciona? Si no, ¿cuál es el problema? ¡No estoy seguro de lo que la pregunta está pidiendo aquí! –
eche un vistazo a http://stackoverflow.com/questions/9658724/ruby-metaprogramming-class-eval/9658775#9658775 es la misma pregunta de la tarea –
Sí, y para la fecha en que lo pregunté primero: P – 8vius