クラスメソッドから呼び出すことができるプライベートインスタンスメソッドを作成できますか?
class Foo
def initialize(n)
@n = n
end
private # or protected?
def plus(n)
@n += n
end
end
class Foo
def Foo.bar(my_instance, n)
my_instance.plus(n)
end
end
a = Foo.new(5)
a.plus(3) # This should not be allowed, but
Foo.bar(a, 3) # I want to allow this
これがかなり初歩的な質問である場合はお詫びしますが、私は解決策への道をグーグルで検索することができませんでした。