gpt4 book ai didi

ruby-on-rails - 检索顶级 namespace Ruby

转载 作者:太空宇宙 更新时间:2023-11-03 16:40:24 25 4
gpt4 key购买 nike

我有多个命名空间,但我需要获取顶级命名空间的名称。

A::B::C

所以,如果我调用 .class,我得到 A::B::C,但我需要它只返回顶级命名空间 A。

有什么方法吗?

最佳答案

假设您有以下嵌套模块:

module A
module B
module C
end
end
end

如果给你模块

m = A::B::C 

然后顶层模块等于:

top = Module.const_get(m.to_s[/.+?(?=::)/])
#=> A
top.is_a? Module
#=> true

参见 Module#const_get .正则表达式读取“延迟匹配一个或多个字符 (?) 后跟两个冒号”,(?=::) 是一个积极的先行

关于ruby-on-rails - 检索顶级 namespace Ruby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58036250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com