Class: ValueObjects::Base
- Inherits:
-
Object
- Object
- ValueObjects::Base
- Includes:
- ActiveModel::Model
- Defined in:
- lib/value_objects/base.rb
Defined Under Namespace
Classes: Collection
Class Attribute Summary collapse
-
.attrs ⇒ Object
readonly
Returns the value of attribute attrs.
Class Method Summary collapse
Instance Method Summary collapse
Class Attribute Details
.attrs ⇒ Object (readonly)
Returns the value of attribute attrs.
30 31 32 |
# File 'lib/value_objects/base.rb', line 30 def attrs @attrs end |
Class Method Details
.dump(value) ⇒ Object
22 23 24 |
# File 'lib/value_objects/base.rb', line 22 def dump(value) value.to_hash if value end |
.i18n_scope ⇒ Object
26 27 28 |
# File 'lib/value_objects/base.rb', line 26 def i18n_scope :value_objects end |
.load(value) ⇒ Object
18 19 20 |
# File 'lib/value_objects/base.rb', line 18 def load(value) new(value) if value end |
Instance Method Details
#==(other) ⇒ Object
8 9 10 |
# 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 ⇒ Object
12 13 14 |
# 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 |