Class: Safrano::Filter::DateTimeLit

Inherits:
Leave
  • Object
show all
Defined in:
lib/odata/filter/base.rb,
lib/odata/filter/tree.rb,
lib/odata/filter/sequel.rb

Overview

DateTime literals datetime’2017-04-15T00:00:00’

Instance Attribute Summary

Attributes inherited from Leave

#parent

Attributes inherited from Node

#value

Instance Method Summary collapse

Methods inherited from Leave

#attach, #check_types

Methods inherited from Node

#==, #initialize, #success

Constructor Details

This class inherits a constructor from Safrano::Filter::Node

Instance Method Details

#accept?(tok, typ) ⇒ Boolean

def initialize(val) datetime’2000-12-12T12:00:53’ –> value 2000-12-12T12:00:53 Note: the tokenizer has already dropped the not usefull string parts super(val) end

Returns:

  • (Boolean)


474
475
476
477
478
479
480
481
# File 'lib/odata/filter/tree.rb', line 474

def accept?(tok, typ)
  case typ
  when :Delimiter, :Separator, :BinopBool, :BinopArithm
    nil
  else
    Parser::ErrorInvalidToken.new(tok, typ, self)
  end
end

#edm_typeObject



483
484
485
# File 'lib/odata/filter/tree.rb', line 483

def edm_type
  :datetime
end

#leuqes(_jh) ⇒ Object

datetime method is defined dynamically by adapter-specific include on startup –> sequel_datetime_adapter.rb



315
316
317
318
# File 'lib/odata/filter/sequel.rb', line 315

def leuqes(_jh)
  # success Sequel.function(:datetime, @value)
  success datetime(@value)
end