class Elasticband::Filter::Range
Constants
- RANGES
Attributes
field[RW]
ranges[RW]
Public Class Methods
new(field, ranges)
click to toggle source
# File lib/elasticband/filter/range.rb, line 8 def initialize(field, ranges) self.field = field.to_sym self.ranges = permitted_ranges(ranges) end
Public Instance Methods
parsed_ranges()
click to toggle source
# File lib/elasticband/filter/range.rb, line 21 def parsed_ranges translated_range = ranges.dup translated_range[:gte] = translated_range.delete(:gteq) if translated_range.key?(:gteq) translated_range[:lte] = translated_range.delete(:lteq) if translated_range.key?(:lteq) translated_range end
permitted_ranges(ranges)
click to toggle source
# File lib/elasticband/filter/range.rb, line 17 def permitted_ranges(ranges) ranges.keep_if { |key, _| RANGES.include?(key) } end
to_h()
click to toggle source
# File lib/elasticband/filter/range.rb, line 13 def to_h { range: { field => parsed_ranges } } end