【发布时间】:2012-10-07 09:42:13
【问题描述】:
我知道我可以使用set_trace_func 来捕捉方法定义的瞬间。
set_trace_func ->event, file, line, method, binding, klass{
if event == "c-call" and method == :method_added
# The moment of method definition
end
}
- 是否可以捕获此时定义的方法的名称?我知道这个类可以被
eval("self", binding)捕获。我可以在上面显示的块中放入什么代码来捕获方法名称? - 是否可以进一步获取正在定义的方法的参数格式(所需参数、其余参数以及它们在源代码中的名称)?
【问题讨论】:
标签: ruby metaprogramming