0

class A; def foo; end; end
class B < A; end
b = B.new          # => #<B:0x0000000243b8c0>
m = b.method :foo  # => #<Method: B(A)#foo>
m.owner            # => A
m.receiver         # => #<B:0x0000000243b8c0>
m.receiver.class   # => B
mm = m.unbind      # => #<UnboundMethod: B(A)#foo>

我怎么B能从mm缺少解析结果中得到mm.to_s

4

1 回答 1

1

我花了一些时间查看proc.c,但我认为这是不可能的。B存储在rclass其中,据我所知,它在任何地方都无法访问。您可以在此处查看它的使用方式,尽管我认为这也无济于事。

请问你为什么需要这样做?也许还有另一种方法可以解决一般问题:)

于 2012-11-27T14:38:35.590 回答