Class: Brujula::Mergers::Merger
- Inherits:
-
Object
- Object
- Brujula::Mergers::Merger
- Defined in:
- lib/brujula/mergers/merger.rb
Instance Attribute Summary collapse
-
#instance ⇒ Object
readonly
Returns the value of attribute instance.
-
#superinstance ⇒ Object
readonly
Returns the value of attribute superinstance.
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(instance:, superinstance:) ⇒ Merger
constructor
A new instance of Merger.
Constructor Details
#initialize(instance:, superinstance:) ⇒ Merger
Returns a new instance of Merger.
6 7 8 9 |
# File 'lib/brujula/mergers/merger.rb', line 6 def initialize(instance:, superinstance:) @superinstance = superinstance @instance = instance end |
Instance Attribute Details
#instance ⇒ Object (readonly)
Returns the value of attribute instance.
4 5 6 |
# File 'lib/brujula/mergers/merger.rb', line 4 def instance @instance end |
#superinstance ⇒ Object (readonly)
Returns the value of attribute superinstance.
4 5 6 |
# File 'lib/brujula/mergers/merger.rb', line 4 def superinstance @superinstance end |
Instance Method Details
#call ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/brujula/mergers/merger.rb', line 11 def call case when superinstance.is_a?(Brujula::MapObject) MapObjectMerger.new( instance: instance, superinstance: superinstance ).call when superinstance.is_a?(Brujula::Object) ObjectMerger.new( instance: instance, superinstance: superinstance ).call else superinstance.dup end end |