class ValueObjects::Base

Attributes

attrs[R]

Public Class Methods

dump(value) click to toggle source
# File lib/value_objects/base.rb, line 22
def dump(value)
  value.to_hash if value
end
i18n_scope() click to toggle source
# File lib/value_objects/base.rb, line 26
def i18n_scope
  :value_objects
end
load(value) click to toggle source
# File lib/value_objects/base.rb, line 18
def load(value)
  new(value) if value
end

Private Class Methods

attr_accessor(*args) click to toggle source
Calls superclass method
# File lib/value_objects/base.rb, line 34
def attr_accessor(*args)
  (@attrs ||= []).concat(args)
  super(*args)
end

Public Instance Methods

==(other) click to toggle source
# File lib/value_objects/base.rb, line 8
def ==(other)
  self.class == other.class && self.class.attrs.all? { |key| public_send(key) == other.public_send(key) }
end
to_hash() click to toggle source
# File lib/value_objects/base.rb, line 12
def to_hash
  self.class.attrs.each_with_object({}) { |key, hash| hash[key] = public_send(key) }
end