Module: LunaPark::Extensions::Comparable

Included in:
LunaPark::Entities::Attributable, Values::Attributable
Defined in:
lib/luna_park/extensions/comparable.rb

Overview

Examples:

class Money
  include LunaPark::Extensions::Comparable

  attr_reader :amount, :currency, :meta

  comparable_attributes :amount, :currency

  def initialize(amount, currency, meta = nil)
    @amount = amount
    @currency = currency
    @meta = meta
  end
end

Money.new(1, 'USD')         == Money.new(2, 'USD')         # => false
Money.new(1, 'USD')         == Money.new(1, 'USD')         # => true
Money.new(1, 'USD', 'meta') == Money.new(1, 'USD', 'feta') # => true

Defined Under Namespace

Modules: ClassMethods, InstanceMethods

Class Method Summary collapse

Class Method Details

.included(base) ⇒ Object



27
28
29
30
# File 'lib/luna_park/extensions/comparable.rb', line 27

def self.included(base)
  base.extend  ClassMethods
  base.include InstanceMethods
end