2011-03-04 54 views
0

予跨越这段代码在Rails action pack gem(2.3.9)在ActionController :: Base <mod中的<运算符是什么意思在Ruby中?

[ControllerCapture, ActionController::ProcessWithTest].each do |mod| 
    unless ActionController::Base < mod # what does this comparison mean? 
    ActionController::Base.class_eval { include mod } 
    end 
end 

来到我想了解在上面显示的第二行代码。 <运营商在这方面做了什么?它是标准的比较运算符吗?(如果是的话,你如何解释代码?)

+0

我将标题改为更具描述性。如果你喜欢,你可以改回它。 –

回答

4

有关这些运营商的更多信息可以发现here

对于<记载:

国防部<其他→真,假,或零

返回true如果MOD是 其他子类。如果两者之间没有 关系,则返回零。 (认为​​ 的关系根据 类定义:“A类< B”意味着 “A < B”)。

+0

[这里是一个例子](https://github.com/evanphx/rubinius/blob/62769002bd59e0b1dd05/kernel/common/module.rb#L550-561)这个方法在Rubinius中实现。 –