class CloudSesame::Query::AST::DateValue
Constants
- COMPILE_FORMAT
- DATETIME_FORMAT
- DATE_FORMAT
- TIME_FORMAT
Public Class Methods
new(value, type = nil)
click to toggle source
Calls superclass method
# File lib/cloud_sesame/query/ast/date_value.rb, line 16 def initialize(value, type = nil) value = Value.string_datetime?(value) ? parse_datetime(value) : Value.string_time?(value) ? parse_time(value) : Value.string_date?(value) ? parse_date(value) : value super(value, type) end
parse(value)
click to toggle source
# File lib/cloud_sesame/query/ast/date_value.rb, line 11 def self.parse(value) return value.parse self if value.kind_of?(RangeValue) range?(value) || string_range?(value) ? RangeValue.new(value, self) : new(value) end
Public Instance Methods
to_s()
click to toggle source
# File lib/cloud_sesame/query/ast/date_value.rb, line 23 def to_s compile end
Private Instance Methods
format(value)
click to toggle source
# File lib/cloud_sesame/query/ast/date_value.rb, line 45 def format(value) value.strftime COMPILE_FORMAT end
parse_date(string)
click to toggle source
# File lib/cloud_sesame/query/ast/date_value.rb, line 37 def parse_date(string) Date.strptime(string, DATE_FORMAT) end
parse_datetime(string)
click to toggle source
# File lib/cloud_sesame/query/ast/date_value.rb, line 29 def parse_datetime(string) DateTime.strptime(string, DATETIME_FORMAT) end
parse_time(string)
click to toggle source
# File lib/cloud_sesame/query/ast/date_value.rb, line 33 def parse_time(string) DateTime.strptime(string, TIME_FORMAT) end
recompile(value)
click to toggle source
Calls superclass method
# File lib/cloud_sesame/query/ast/date_value.rb, line 41 def recompile(value) super strip format value end