Class: QueryStringSearch::Comparator::Inequality

Inherits:
AbstractComparison show all
Defined in:
lib/query_string_search/comparisons/inequality.rb

Instance Attribute Summary

Attributes inherited from AbstractComparison

#operator, #other, #subject

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from AbstractComparison

all_reserved_operators, comparisons, descendants

Class Method Details

.build_me?(matcher) ⇒ Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/query_string_search/comparisons/inequality.rb', line 16

def self.build_me?(matcher)
  reserved_operators.include?(matcher.operator)
end

.reserved_operatorsObject



12
13
14
# File 'lib/query_string_search/comparisons/inequality.rb', line 12

def self.reserved_operators
  [:<, :>, :<=, :>=]
end

Instance Method Details

#compare(other) ⇒ Object



4
5
6
# File 'lib/query_string_search/comparisons/inequality.rb', line 4

def compare(other)
  normalize(other).public_send(operator, normalize(subject))
end

#normalize(unnormalized) ⇒ Object



8
9
10
# File 'lib/query_string_search/comparisons/inequality.rb', line 8

def normalize(unnormalized)
  unnormalized.to_i
end