我想像这样访问一个类的源代码:
# Module inside file1.rb
module MetaFoo
class << Object
def bar
# here I'd like to access the source location of the Foo class definition
# which should result in /path/to/file2.rb
end
end
end
# Class inside another file2.rb
class Foo
bar
end
我可以做一些不好的事情,比如:
self.send(:caller)
并尝试解析输出,甚至:
class Foo
bar __FILE__
end
但这不是我想要的,我希望有一个更优雅的解决方案。
欢迎任何提示。