Module: RSpec::Fire::RecursiveConstMethods
- Included in:
- FireDoublable, ShouldProxy
- Defined in:
- lib/rspec/fire/legacy.rb
Instance Method Summary collapse
- #const_defined_on?(mod, const_name) ⇒ Boolean
- #get_const_defined_on(mod, const_name) ⇒ Object
- #recursive_const_defined?(name) ⇒ Boolean
- #recursive_const_get(name) ⇒ Object
Instance Method Details
#const_defined_on?(mod, const_name) ⇒ Boolean
78 79 80 |
# File 'lib/rspec/fire/legacy.rb', line 78 def const_defined_on?(mod, const_name) mod.const_defined?(const_name) end |
#get_const_defined_on(mod, const_name) ⇒ Object
82 83 84 85 86 87 88 |
# File 'lib/rspec/fire/legacy.rb', line 82 def get_const_defined_on(mod, const_name) if const_defined_on?(mod, const_name) return mod.const_get(const_name) end raise NameError, "uninitialized constant #{mod.name}::#{const_name}" end |
#recursive_const_defined?(name) ⇒ Boolean
103 104 105 106 107 108 109 |
# File 'lib/rspec/fire/legacy.rb', line 103 def recursive_const_defined? name !!name.split('::').inject(Object) {|klass,name| if klass && const_defined_on?(klass, name) get_const_defined_on(klass, name) end } end |
#recursive_const_get(name) ⇒ Object
99 100 101 |
# File 'lib/rspec/fire/legacy.rb', line 99 def recursive_const_get name name.split('::').inject(Object) {|klass,name| get_const_defined_on(klass, name) } end |