Module: Summarily::ClassMethods
- Defined in:
- lib/summarily/class_methods.rb
Instance Method Summary collapse
Instance Method Details
#summarily {|strategy| ... } ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/summarily/class_methods.rb', line 4 def summarily strategy = MergeStrategy.new yield strategy define_method :merge do |other| merged = {} strategy.merge_operations.each do |attr, operation| merged[attr] = operation.call( self.send(attr), other.send(attr) ) end self.class.new(merged) end end |