Мне нужно сделать некоторые методы экземпляра private после регистрации этого объекта в другом объекте.Сделать методы экземпляра приватными во время выполнения
Я не хочу замораживать объект, потому что он должен оставаться редактируемым, но с меньшей функциональностью. И я не хочу отменять методы, поскольку они используются внутри.
Что мне нужно что-то вроде:
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"
Любые идеи?
Это отвечает моему сомнению: «Что такое публично, а что личное - за класс». Думаю, мне нужно изучить другие альтернативы. –