Class: Yoda::Store::Objects::Merger

Inherits:
Object
  • Object
show all
Defined in:
lib/yoda/store/objects/merger.rb

Defined Under Namespace

Classes: PendingArray, PendingSet

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(instances) ⇒ Merger

Returns a new instance of Merger.

Parameters:

  • instances (Array<Base>)


12
13
14
15
# File 'lib/yoda/store/objects/merger.rb', line 12

def initialize(instances)
  fail ArgumentError, 'instances must not be an empty array' if instances.empty?
  @instances = instances
end

Instance Attribute Details

#instancesArray<Base> (readonly)

Returns:



9
10
11
# File 'lib/yoda/store/objects/merger.rb', line 9

def instances
  @instances
end

Instance Method Details

#merged_instanceBase

Returns:



18
19
20
# File 'lib/yoda/store/objects/merger.rb', line 18

def merged_instance
  class_to_generate.new(**attributes.select { |k, v| class_to_generate.attr_names.include?(k) })
end