class UniverseCompiler::Entity::Base
Attributes
fields[R]
universe[R]
Public Class Methods
new(fields: {}, universe: nil)
click to toggle source
# File lib/universe_compiler/entity.rb, line 25 def initialize(fields: {}, universe: nil) @fields = fields define_known_fields_accessors define_reverse_methods self.universe = universe self.fully_resolved = true if universe.nil? self.name = self.class.get_unique_name(nil) if self.class.auto_named_entity_type? else unless universe.compiled? self.name = self.class.get_unique_name(universe) if self.class.auto_named_entity_type? end end end
Public Instance Methods
[](key)
click to toggle source
# File lib/universe_compiler/entity.rb, line 49 def [](key) fields[key] end
[]=(key, value)
click to toggle source
# File lib/universe_compiler/entity.rb, line 53 def []=(key, value) fields[key] = value end
universe=(a_universe)
click to toggle source
# File lib/universe_compiler/entity.rb, line 40 def universe=(a_universe) unless fully_resolved? deep_traverse fields do |leaf| leaf.universe = a_universe if leaf.is_a? UniverseCompiler::Entity::Reference end end @universe = a_universe end