提交 2f98032f 编写于 作者: Y Yehuda Katz

Fix a problem where nil was appearing in the list

上级 7d7f9ccf
......@@ -76,17 +76,19 @@ def get(key)
locked :concat, :each, :delete_if, :<<
def new_constants_for(frames)
frames.map do |mod_name, prior_constants|
constants = []
frames.each do |mod_name, prior_constants|
mod = Inflector.constantize(mod_name) if Dependencies.qualified_const_defined?(mod_name)
next unless mod.is_a?(Module)
new_constants = mod.local_constant_names - prior_constants
get(mod_name).concat(new_constants)
new_constants.map do |suffix|
([mod_name, suffix] - ["Object"]).join("::")
new_constants.each do |suffix|
constants << ([mod_name, suffix] - ["Object"]).join("::")
end
end.flatten
end
constants
end
# Add a set of modules to the watch stack, remembering the initial constants
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册