Module: UniverseCompiler::Utils::WithUniqueName

Included in:
Package::Base
Defined in:
lib/universe_compiler/utils/with_unique_name.rb

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



68
69
70
# File 'lib/universe_compiler/utils/with_unique_name.rb', line 68

def self.included(base)
  base.extend UniverseCompiler::Utils::WithUniqueName::ClassMethods
end

Instance Method Details

#nameObject



55
56
57
58
59
60
61
62
# File 'lib/universe_compiler/utils/with_unique_name.rb', line 55

def name
  defined_name = self.class.instances.key self
  if defined_name.nil?
    defined_name = self.class.get_unique_name
    self.name = defined_name
  end
  defined_name
end

#name=(name) ⇒ Object



64
65
66
# File 'lib/universe_compiler/utils/with_unique_name.rb', line 64

def name=(name)
  self.class.set_name name, self
end