Module: ActiveSupport::Dependencies::ModuleConstMissing
- Defined in:
- lib/active_support/dependencies.rb
Overview
Module includes this module.
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.append_features(base) ⇒ Object
:nodoc:
161 162 163 164 165 166 167 168 169 |
# File 'lib/active_support/dependencies.rb', line 161 def self.append_features(base) base.class_eval do # Emulate #exclude via an ivar return if defined?(@_const_missing) && @_const_missing @_const_missing = instance_method(:const_missing) remove_method(:const_missing) end super end |
.exclude_from(base) ⇒ Object
171 172 173 174 175 176 |
# File 'lib/active_support/dependencies.rb', line 171 def self.exclude_from(base) base.class_eval do define_method :const_missing, @_const_missing @_const_missing = nil end end |
Instance Method Details
#const_missing(const_name) ⇒ Object
178 179 180 181 182 183 184 185 |
# File 'lib/active_support/dependencies.rb', line 178 def const_missing(const_name) # The interpreter does not pass nesting information, and in the # case of anonymous modules we cannot even make the trade-off of # assuming their name reflects the nesting. Resort to Object as # the only meaningful guess we can make. from_mod = anonymous? ? ::Object : self Dependencies.load_missing_constant(from_mod, const_name) end |
#unloadable(const_desc = self) ⇒ Object
187 188 189 |
# File 'lib/active_support/dependencies.rb', line 187 def unloadable(const_desc = self) super(const_desc) end |