プライベート メソッドを呼び出すときに、明示的なレシーバーを配置することは受け入れられないと思いました。Ruby 2.0 でこれを実行したところ、結果が得られました。
class Test
def public_method
self.set_size=10
end
def return_size
@size
end
private
def set_size=(size)
@size = size
end
end
test = Test.new
test.public_method
p test.return_size
どうしてこれなの?