module Safrano::Filter::FuncTreeSqlite
sqlite adapter specific function handler
Public Instance Methods
ceiling(_lq)
click to toggle source
# File lib/odata/filter/sequel_function_adapter.rb, line 63 def ceiling(_lq) Safrano::FilterFunctionNotImplementedError.new("$filter function 'ceiling' is not implemented in sqlite adapter") end
day(lq)
click to toggle source
# File lib/odata/filter/sequel_function_adapter.rb, line 55 def day(lq) Sequel.function(:strftime, '%d', lq).cast(:integer) end
floor(_lq)
click to toggle source
# File lib/odata/filter/sequel_function_adapter.rb, line 59 def floor(_lq) Safrano::FilterFunctionNotImplementedError.new("$filter function 'floor' is not implemented in sqlite adapter") end
hour(lq)
click to toggle source
# File lib/odata/filter/sequel_function_adapter.rb, line 51 def hour(lq) Sequel.function(:strftime, '%H', lq).cast(:integer) end
minute(lq)
click to toggle source
# File lib/odata/filter/sequel_function_adapter.rb, line 47 def minute(lq) Sequel.function(:strftime, '%M', lq).cast(:integer) end
month(lq)
click to toggle source
# File lib/odata/filter/sequel_function_adapter.rb, line 39 def month(lq) Sequel.function(:strftime, '%m', lq).cast(:integer) end
second(lq)
click to toggle source
# File lib/odata/filter/sequel_function_adapter.rb, line 43 def second(lq) Sequel.function(:strftime, '%S', lq).cast(:integer) end
substringof_sig2(jh)
click to toggle source
# File lib/odata/filter/sequel_function_adapter.rb, line 10 def substringof_sig2(jh) # substringof(name, '__Route du Rhum__') --> # '__Route du Rhum__' contains name as a substring # sqlite uses instr() Contract.collect_result!(args[1].leuqes(jh), args[0].leuqes(jh)) do |l1, l0| substr_func = Sequel.function(:instr, l1, l0) Sequel::SQL::BooleanExpression.new(:>, substr_func, 0) end end
year(lq)
click to toggle source
sqlite does not have extract but recommends to use strftime
# File lib/odata/filter/sequel_function_adapter.rb, line 35 def year(lq) Sequel.function(:strftime, '%Y', lq).cast(:integer) end