我希望能够为所需文件提供所需的知识,如此
#requiring file
require 'required_file', __FILE__
或
#required file
puts __REQUIRING_FILE__
有没有办法以某种方式实现这一目标? 感谢
答案 0 :(得分:0)
不确定您是否知道哪个文件需要,但Module
有回调included
和extended
,以便您可以对另一个尝试包含该模块的模块做出反应。也许你可以重构你的概念来代替使用这个功能。
请参阅http://www.ruby-doc.org/core-1.9.3/Module.html#method-i-included
答案 1 :(得分:0)
Ruby还允许您覆盖require方法。
以下是添加基准测试以求https://gist.github.com/278994的示例。 然后,您可以使用Kernel.caller获取调用require方法的文件的名称。