Necesito hacer que algunos métodos de instancia sean privados después de registrar ese objeto en otro objeto.Hacer que los métodos de instancia sean privados en tiempo de ejecución
No quiero congelar el objeto porque debe seguir siendo editable, solo que con menos funcionalidad. Y no quiero descifrar los métodos ya que se usan internamente.
Lo que necesito es algo así como:
class MyClass
def my_method
puts "Hello"
end
end
a = MyClass.new
b = MyClass.new
a.my_method #=> "Hello"
a.private_instance_method(:my_method)
a.my_method #=> NoMethodError
b.my_method #=> "Hello"
¿Alguna idea?
Responde a mi duda: "Lo que es público y lo que es privado es por clase". Supongo que tengo que explorar otras alternativas. –