Class: ElasticsearchDslBuilder::DSL::Search::Queries::Range
- Defined in:
- lib/elasticsearch_dsl_builder/dsl/search/queries/range.rb
Instance Attribute Summary
Attributes inherited from Query
Instance Method Summary collapse
- #field(field) ⇒ Object
- #format(format) ⇒ Object
- #gt(gt) ⇒ Object
- #gte(gte) ⇒ Object
-
#initialize(field = nil) ⇒ Range
constructor
A new instance of Range.
- #lt(lt) ⇒ Object
- #lte(lte) ⇒ Object
- #to_hash ⇒ Object
Constructor Details
#initialize(field = nil) ⇒ Range
Returns a new instance of Range.
6 7 8 9 10 |
# File 'lib/elasticsearch_dsl_builder/dsl/search/queries/range.rb', line 6 def initialize(field = nil) @type = :range field(field) super() end |
Instance Method Details
#field(field) ⇒ Object
12 13 14 15 16 17 |
# File 'lib/elasticsearch_dsl_builder/dsl/search/queries/range.rb', line 12 def field(field) field_valid = field.instance_of?(String) || field.instance_of?(Symbol) raise ArgumentError, 'field must be a String' unless field_valid @field = field.to_sym self end |
#format(format) ⇒ Object
19 20 21 22 23 |
# File 'lib/elasticsearch_dsl_builder/dsl/search/queries/range.rb', line 19 def format(format) raise ArgumentError, 'format must be a String' unless format.instance_of?(String) @format = format self end |
#gt(gt) ⇒ Object
25 26 27 28 |
# File 'lib/elasticsearch_dsl_builder/dsl/search/queries/range.rb', line 25 def gt(gt) @gt = gt self end |
#gte(gte) ⇒ Object
30 31 32 33 |
# File 'lib/elasticsearch_dsl_builder/dsl/search/queries/range.rb', line 30 def gte(gte) @gte = gte self end |
#lt(lt) ⇒ Object
35 36 37 38 |
# File 'lib/elasticsearch_dsl_builder/dsl/search/queries/range.rb', line 35 def lt(lt) @lt = lt self end |
#lte(lte) ⇒ Object
40 41 42 43 |
# File 'lib/elasticsearch_dsl_builder/dsl/search/queries/range.rb', line 40 def lte(lte) @lte = lte self end |
#to_hash ⇒ Object
45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/elasticsearch_dsl_builder/dsl/search/queries/range.rb', line 45 def to_hash nested_query = {} nested_query.update(gt: @gt) if @gt nested_query.update(gte: @gte) if @gte nested_query.update(lt: @lt) if @lt nested_query.update(lte: @lte) if @lte nested_query.update(format: @format) if @format @query = { @field => nested_query } super end |