Class: Elasticsearch::DSL::Search::Highlight
- Inherits:
-
Object
- Object
- Elasticsearch::DSL::Search::Highlight
- Includes:
- BaseComponent
- Defined in:
- lib/elasticsearch/dsl/search/highlight.rb
Overview
Wraps the ‘highlight` part of a search definition
Instance Method Summary collapse
-
#encoder(value) ⇒ Object
(also: #encoder=)
Specify the ‘encoder` option for highlighting.
-
#field(name, options = {}) ⇒ Object
Specify a single field to highlight.
-
#fields(value_or_name) ⇒ Object
Specify the fields to highlight.
-
#initialize(*args, &block) ⇒ Highlight
constructor
A new instance of Highlight.
-
#post_tags(*value) ⇒ Object
(also: #post_tags=)
Specify the closing tags for the highlighted snippets.
-
#pre_tags(*value) ⇒ Object
(also: #pre_tags=)
Specify the opening tags for the highlighted snippets.
-
#tags_schema(value) ⇒ Object
(also: #tags_schema=)
Specify the ‘tags_schema` option for highlighting.
-
#to_hash ⇒ Hash
Convert the definition to a Hash.
Methods included from BaseComponent
Constructor Details
#initialize(*args, &block) ⇒ Highlight
Returns a new instance of Highlight.
16 17 18 19 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 16 def initialize(*args, &block) @value = args.pop || {} super end |
Instance Method Details
#encoder(value) ⇒ Object Also known as: encoder=
Specify the ‘encoder` option for highlighting
74 75 76 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 74 def encoder(value) @value[:encoder] = value end |
#field(name, options = {}) ⇒ Object
Specify a single field to highlight
56 57 58 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 56 def field(name, ={}) (@value[:fields] ||= {}).update name.to_sym => end |
#fields(value_or_name) ⇒ Object
Specify the fields to highlight
32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 32 def fields(value_or_name) value = case value_or_name when Hash value_or_name when Array value_or_name.reduce({}) { |sum, item| sum.update item.to_sym => {}; sum } else end (@value[:fields] ||= {}).update value self end |
#post_tags(*value) ⇒ Object Also known as:
Specify the closing tags for the highlighted snippets
68 69 70 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 68 def (*value) @value[:post_tags] = value.flatten end |
#pre_tags(*value) ⇒ Object Also known as:
Specify the opening tags for the highlighted snippets
62 63 64 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 62 def (*value) @value[:pre_tags] = value.flatten end |
#tags_schema(value) ⇒ Object Also known as:
Specify the ‘tags_schema` option for highlighting
80 81 82 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 80 def (value) @value[:tags_schema] = value end |
#to_hash ⇒ Hash
Convert the definition to a Hash
88 89 90 91 92 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 88 def to_hash call @hash = @value @hash end |