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.
29 30 31 32 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 29 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
87 88 89 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 87 def encoder(value) @value[:encoder] = value end |
#field(name, options = {}) ⇒ Object
Specify a single field to highlight
69 70 71 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 69 def field(name, ={}) (@value[:fields] ||= {}).update name.to_sym => end |
#fields(value_or_name) ⇒ Object
Specify the fields to highlight
45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 45 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
81 82 83 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 81 def (*value) @value[:post_tags] = value.flatten end |
#pre_tags(*value) ⇒ Object Also known as:
Specify the opening tags for the highlighted snippets
75 76 77 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 75 def (*value) @value[:pre_tags] = value.flatten end |
#tags_schema(value) ⇒ Object Also known as:
Specify the ‘tags_schema` option for highlighting
93 94 95 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 93 def (value) @value[:tags_schema] = value end |
#to_hash ⇒ Hash
Convert the definition to a Hash
101 102 103 104 105 |
# File 'lib/elasticsearch/dsl/search/highlight.rb', line 101 def to_hash call @hash = @value @hash end |