3
這是我得到的,但它也發現類和其他常量..有沒有更好的方法?找到模塊的孩子的更好方法?
class Module
def children
constants.collect { |c| const_get(c) }.compact
end
end
這是我得到的,但它也發現類和其他常量..有沒有更好的方法?找到模塊的孩子的更好方法?
class Module
def children
constants.collect { |c| const_get(c) }.compact
end
end
'孩子'你似乎意味着模塊嵌套在給定的模塊下,對吧?與繼承關係無關?
假設你僅僅意味着嵌套模塊,下面應該工作:
class Module
def children
constants.collect { |c| const_get(c) }.
select { |m| m.instance_of?(Module) }
end
end
編輯:您可能需要使用constants(false)
進一步防止不斷查找模塊上了繼承鏈。