module Trailblazer::Finder::Adapters::Sequel::Predicates

ActiveRecord Predicates Adapter

Public Instance Methods

set_blank_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 28
def set_blank_handler
  lambda do |entity, attribute, _value|
    entity.where { ::Sequel.|({::Sequel[attribute.to_sym] => nil}, {::Sequel[attribute.to_sym] => ""}) }
  end
end
set_cont_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 65
def set_cont_handler
  lambda do |entity, attribute, value|
    entity.where(::Sequel.like(attribute.to_sym, "%#{value}%"))
  end
end
set_eq_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 12
def set_eq_handler
  lambda do |entity, attribute, value|
    return if Utils::String.blank?(value.to_s)

    entity.where { ::Sequel[attribute.to_sym] =~ value }
  end
end
set_ew_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 89
def set_ew_handler
  lambda do |entity, attribute, value|
    entity.where(::Sequel.like(attribute.to_sym, "%#{value}"))
  end
end
set_gt_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 41
def set_gt_handler
  lambda do |entity, attribute, value|
    entity.where { ::Sequel[attribute.to_sym] > value.to_f }
  end
end
set_gte_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 47
def set_gte_handler
  lambda do |entity, attribute, value|
    entity.where { ::Sequel[attribute.to_sym] >= value.to_f }
  end
end
set_lt_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 53
def set_lt_handler
  lambda do |entity, attribute, value|
    entity.where { ::Sequel[attribute.to_sym] < value.to_f }
  end
end
set_lte_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 59
def set_lte_handler
  lambda do |entity, attribute, value|
    entity.where { ::Sequel[attribute.to_sym] <= value.to_f }
  end
end
set_not_blank_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 34
def set_not_blank_handler
  lambda do |entity, attribute, _value|
    entity.exclude(::Sequel[attribute.to_sym] => nil, ::Sequel[attribute.to_sym] => "")
    # entity.exclude(attribute.to_sym => nil).exclude(attribute.to_sym => "")
  end
end
set_not_cont_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 71
def set_not_cont_handler
  lambda do |entity, attribute, value|
    entity.where(~::Sequel.like(attribute.to_sym, "%#{value}%"))
  end
end
set_not_eq_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 20
def set_not_eq_handler
  lambda do |entity, attribute, value|
    return if Utils::String.blank?(value.to_s)

    entity.where { ::Sequel[attribute.to_sym] !~ value }
  end
end
set_not_ew_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 95
def set_not_ew_handler
  lambda do |entity, attribute, value|
    entity.where(~::Sequel.like(attribute.to_sym, "%#{value}"))
  end
end
set_not_sw_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 83
def set_not_sw_handler
  lambda do |entity, attribute, value|
    entity.where(~::Sequel.like(attribute.to_sym, "#{value}%"))
  end
end
set_sw_handler() click to toggle source
# File lib/trailblazer/finder/adapters/sequel/predicates.rb, line 77
def set_sw_handler
  lambda do |entity, attribute, value|
    entity.where(::Sequel.like(attribute.to_sym, "#{value}%"))
  end
end