Class: DynamoidAdvancedWhere::Nodes::NumericDateAttributeNode

Inherits:
FieldNode show all
Includes:
Concerns::SupportsGreaterThan
Defined in:
lib/dynamoid_advanced_where/nodes/field_node.rb

Instance Attribute Summary

Attributes inherited from FieldNode

#attr_prefix, #field_path

Attributes inherited from BaseNode

#expression_prefix

Instance Method Summary collapse

Methods included from Concerns::SupportsGreaterThan

#gt, #lt

Methods inherited from FieldNode

create_node, #expression_attribute_names, #expression_attribute_values, #initialize, #to_expression

Methods included from Concerns::SupportsExistance

#exists?

Methods included from Concerns::SupportsEquality

#eq, #not_eq

Methods inherited from BaseNode

#expression_attribute_names, #expression_attribute_values

Constructor Details

This class inherits a constructor from DynamoidAdvancedWhere::Nodes::FieldNode

Instance Method Details

#parse_right_hand_side(val) ⇒ Object

Raises:

  • (ArgumentError)


107
108
109
110
111
# File 'lib/dynamoid_advanced_where/nodes/field_node.rb', line 107

def parse_right_hand_side(val)
  raise ArgumentError, "unable to compare date to type #{val.class}" if !val.is_a?(Date) || val.is_a?(DateTime)

  (val - Dynamoid::Persistence::UNIX_EPOCH_DATE).to_i
end