class ReeMapper::Integer
def cast(value)
def cast(value) if value.is_a?(Integer) value elsif value.is_a?(String) coerced_value = Integer(value, exception: false) if coerced_value.nil? raise ReeMapper::CoercionError.new("is invalid integer, got `#{truncate(value.inspect)}`") end coerced_value else raise ReeMapper::TypeError.new("should be an integer, got `#{truncate(value.inspect)}`") end end
def db_dump(value)
def db_dump(value) serialize(value) end
def db_load(value)
def db_load(value) cast(value) end
def serialize(value)
def serialize(value) if value.is_a? Integer value else raise ReeMapper::TypeError.new("should be an integer, got `#{truncate(value.inspect)}`") end end