- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我相信 Ruby,有一种方法可以访问 block 中所有局部变量的名称。
def some_method(param1, param2)
p local_variables
end
每当调用“some_method”时,param1 和 param2 将被打印出来。不是值(value)!但是变量名。
现在,我想在 self.method_added 内实现相同的结果。
只要定义了一个方法,就会调用 self.method_added。我希望能够访问在 self.method_added 中定义的方法的局部变量的名称。例如,
def self.method_added(method_name)
#prints the variables names of the argument for method method_name
end
def do_something param1, param2
#crazy stuff
end
使用上面的代码,当创建 do_something 时,我想访问变量名称“param1”和“param2”
有办法吗?
最佳答案
def self.method_added(method_name)
p self.instance_method(method_name.to_sym).parameters.collect{|g| g[1]}
end
关于ruby - 访问 self.method_added 中的变量名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7239623/
我想在将实例和类方法添加到某个类时施展魔法。因此我尝试了以下方法: module Magic def self.included(base) base.extend ClassMethod
我想在对象的所有方法中 Hook 一些 Action ,但我的尝试似乎陷入了无限循环。 一旦我注释掉 initialize 问题就解决了。 我该如何解决这个问题? 我以这种方式调用对象TaskReco
我已经创建了一个模块来在类中的方法调用之前 Hook 方法: module Hooks def self.included(base) base.send :extend, ClassMethods
我相信 Ruby,有一种方法可以访问 block 中所有局部变量的名称。 def some_method(param1, param2) p local_variables end 每当调用“so
我想写一点“Deprecate-It”库并经常使用“method_added”回调。但是现在我注意到在包含模块时不会触发此回调。 是否有任何回调或变通方法,以便在某些内容包含到自身时通知类“Fooba
我有以下来自 Programming Ruby 1.9 的代码(稍微改编)我只是想确保我的思维过程是准确的 module Trace def self.included(culprit)
我是一名优秀的程序员,十分优秀!