Module: Lean::Utils

Defined in:
lib/lean-utils/version.rb,
lib/lean-utils/namespace.rb,
lib/lean-utils/inheritable_class_attributes.rb,
lib/lean-utils/inheritable_class_attributes/class_methods.rb

Defined Under Namespace

Modules: InheritableClassAttributes

Constant Summary collapse

VERSION =
'0.0.1'

Class Method Summary collapse

Class Method Details

.namespace(object) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
# File 'lib/lean-utils/namespace.rb', line 3

def self.namespace(object)
  case object
  when Class then namespace(object.name)
  when String
    begin
      class_name = const_get(object).name
    rescue NameError
      class_name = object
    end

    class_name.split('::').tap(&:pop).join('::')
  end
end