Module: Trailblazer::Finder::Adapters::Sequel::Predicates

Defined in:
lib/trailblazer/finder/adapters/sequel/predicates.rb

Overview

ActiveRecord Predicates Adapter

Class Method Summary collapse

Class Method Details

.set_blank_handlerObject



28
29
30
31
32
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 28

def set_blank_handler
  ->(entity, attribute, _value) do
    entity.where { ::Sequel.|({::Sequel[attribute.to_sym] => nil}, {::Sequel[attribute.to_sym] => ""}) }
  end
end

.set_cont_handlerObject



65
66
67
68
69
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 65

def set_cont_handler
  ->(entity, attribute, value) do
    entity.where(::Sequel.like(attribute.to_sym, "%#{value}%"))
  end
end

.set_eq_handlerObject



12
13
14
15
16
17
18
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 12

def set_eq_handler
  ->(entity, attribute, value) do
    return if Utils::String.blank?(value.to_s)

    entity.where { ::Sequel[attribute.to_sym] =~ value }
  end
end

.set_ew_handlerObject



89
90
91
92
93
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 89

def set_ew_handler
  ->(entity, attribute, value) do
    entity.where(::Sequel.like(attribute.to_sym, "%#{value}"))
  end
end

.set_gt_handlerObject



41
42
43
44
45
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 41

def set_gt_handler
  ->(entity, attribute, value) do
    entity.where { ::Sequel[attribute.to_sym] > value.to_f }
  end
end

.set_gte_handlerObject



47
48
49
50
51
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 47

def set_gte_handler
  ->(entity, attribute, value) do
    entity.where { ::Sequel[attribute.to_sym] >= value.to_f }
  end
end

.set_lt_handlerObject



53
54
55
56
57
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 53

def set_lt_handler
  ->(entity, attribute, value) do
    entity.where { ::Sequel[attribute.to_sym] < value.to_f }
  end
end

.set_lte_handlerObject



59
60
61
62
63
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 59

def set_lte_handler
  ->(entity, attribute, value) do
    entity.where { ::Sequel[attribute.to_sym] <= value.to_f }
  end
end

.set_not_blank_handlerObject



34
35
36
37
38
39
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 34

def set_not_blank_handler
  ->(entity, attribute, _value) do
    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_handlerObject



71
72
73
74
75
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 71

def set_not_cont_handler
  ->(entity, attribute, value) do
    entity.where(~::Sequel.like(attribute.to_sym, "%#{value}%"))
  end
end

.set_not_eq_handlerObject



20
21
22
23
24
25
26
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 20

def set_not_eq_handler
  ->(entity, attribute, value) do
    return if Utils::String.blank?(value.to_s)

    entity.where { ::Sequel[attribute.to_sym] !~ value }
  end
end

.set_not_ew_handlerObject



95
96
97
98
99
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 95

def set_not_ew_handler
  ->(entity, attribute, value) do
    entity.where(~::Sequel.like(attribute.to_sym, "%#{value}"))
  end
end

.set_not_sw_handlerObject



83
84
85
86
87
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 83

def set_not_sw_handler
  ->(entity, attribute, value) do
    entity.where(~::Sequel.like(attribute.to_sym, "#{value}%"))
  end
end

.set_sw_handlerObject



77
78
79
80
81
# File 'lib/trailblazer/finder/adapters/sequel/predicates.rb', line 77

def set_sw_handler
  ->(entity, attribute, value) do
    entity.where(::Sequel.like(attribute.to_sym, "#{value}%"))
  end
end