module Gobstones::EqualityDefinition

Public Instance Methods

==(other) click to toggle source
# File lib/gobstones/modules/equality_definition.rb, line 3
def ==(other)
  class_is_equal?(other) && attributes_are_equal?(other)
end
Also aliased as: eql?
eql?(other)
Alias for: ==
equality_attributes() click to toggle source
# File lib/gobstones/modules/equality_definition.rb, line 7
def equality_attributes
  []
end

Private Instance Methods

attributes_are_equal?(other) click to toggle source
# File lib/gobstones/modules/equality_definition.rb, line 19
def attributes_are_equal?(other)
  equality_attributes.all? { |attr| send(attr) == other.send(attr) }
end
class_is_equal?(other) click to toggle source
# File lib/gobstones/modules/equality_definition.rb, line 15
def class_is_equal?(other)
  self.class == other.class
end