Class: ReeMapper::Date
- Inherits:
-
AbstractType
- Object
- AbstractType
- ReeMapper::Date
- Defined in:
- lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/date.rb
Instance Method Summary collapse
- #cast(value) ⇒ Object
- #db_dump(value) ⇒ Object
- #db_load(value) ⇒ Object
-
#db_load_trusted_check(var) ⇒ Object
instance_of?, not is_a?: DateTime < Date, and cast converts DateTime.
- #serialize(value) ⇒ Object
Instance Method Details
#cast(value) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/date.rb', line 21 def cast(value) if value.class == Date value elsif value.class == DateTime || value.class == Time value.to_date elsif value.is_a?(String) begin Date.parse(value) rescue ArgumentError raise ReeMapper::CoercionError.new("is invalid date, got `#{truncate(value.inspect)}`") end else raise ReeMapper::TypeError.new("should be a date, got `#{truncate(value.inspect)}`") end end |
#db_dump(value) ⇒ Object
38 39 40 |
# File 'lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/date.rb', line 38 def db_dump(value) serialize(value) end |
#db_load(value) ⇒ Object
43 44 45 |
# File 'lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/date.rb', line 43 def db_load(value) cast(value) end |
#db_load_trusted_check(var) ⇒ Object
instance_of?, not is_a?: DateTime < Date, and cast converts DateTime
7 8 9 |
# File 'lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/date.rb', line 7 def db_load_trusted_check(var) "#{var}.instance_of?(::Date)" end |