探索 IronRuby 与 Ruby 基础编程
1. IronRuby 的强大功能
IronRuby 有着强大的元编程能力,以 method_missing 方法为例,它能捕获所有对未定义方法的调用,并让开发者按需求处理。下面是一个使用 method_missing 实现的 Recorder 类,该类可以记录方法调用并按需回放:
class Recorder
def initialize
@calls = []
end
def method_missing(method, *args, &block)
@calls << [method, args, block]
end
def playback(obj)
@calls.each do |method, args, block|
obj.send method, *args, &block
end
end
end
以下是使用 Recorder 类和 .NET 的 Stack 类的示例:
recorder = Recorder.new
recorder.push 5.6
recorder.pop
recorder.push 1
recorder.push “IronRuby”
stack = System::Collections::St
超级会员免费看
订阅专栏 解锁全文
13

被折叠的 条评论
为什么被折叠?



