Module: Antlers::Namespace
Instance Method Summary collapse
Instance Method Details
#class_constant(namespace:, name:) ⇒ Object
5 6 7 8 9 |
# File 'lib/modules/namespace.rb', line 5 def class_constant(namespace:, name:) return Object.const_get(name) if name.start_with?('::') class_from_namespace(namespace:, name:) end |
#class_from_namespace(namespace:, name:) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/modules/namespace.rb', line 11 def class_from_namespace(namespace:, name:) namespace_with_name = [namespace, name].join('::') return Object.const_get(namespace_with_name) if Object.const_defined?(namespace_with_name) namespace.pop class_from_namespace(namespace:, name:) end |