class Qiita::Elasticsearch::RangeToken
Constants
- RANGE_TERM_REGEXP
Public Instance Methods
to_hash()
click to toggle source
@return [Hash]
# File lib/qiita/elasticsearch/range_token.rb, line 9 def to_hash if range_parameter { "range" => { @field_name => { range_parameter => range_query.to_i, }, }, } else { "term" => { @field_name => proper_cased_term.to_i, }, } end end
Private Instance Methods
operand_map()
click to toggle source
# File lib/qiita/elasticsearch/range_token.rb, line 47 def operand_map { ">" => "gt", ">=" => "gte", "<" => "lt", "<=" => "lte", } end
range_match()
click to toggle source
# File lib/qiita/elasticsearch/range_token.rb, line 43 def range_match @range_match ||= RANGE_TERM_REGEXP.match(@term) || {} end
range_parameter()
click to toggle source
@return [String, nil] @example Suppose @term is “created_at:>=2015-04-16”
range_parameter #=> "gte"
# File lib/qiita/elasticsearch/range_token.rb, line 32 def range_parameter range_match[:operand] ? operand_map[range_match[:operand]] : nil end
range_query()
click to toggle source
@return [String, nil] @example Suppose @term is “created_at:>=2015-04-16”
range_query #=> "2015-04-16"
# File lib/qiita/elasticsearch/range_token.rb, line 39 def range_query range_match[:query] end