Class: Qiita::Elasticsearch::Token
- Inherits:
-
Object
- Object
- Qiita::Elasticsearch::Token
- Defined in:
- lib/qiita/elasticsearch/token.rb
Direct Known Subclasses
DateToken, FilterableToken, HierarchalToken, IntToken, MatchableToken, RangeToken
Instance Attribute Summary collapse
-
#field_name ⇒ Object
readonly
Returns the value of attribute field_name.
-
#term ⇒ Object
readonly
Returns the value of attribute term.
Instance Method Summary collapse
-
#downcased? ⇒ true, false
True if its term must be treated with downcased.
- #downcased_term ⇒ Object
- #filter? ⇒ Boolean
-
#initialize(downcased: nil, field_name: nil, minus: nil, quoted: nil, term: nil, token_string: nil) ⇒ Token
constructor
A new instance of Token.
- #must? ⇒ Boolean
- #must_not? ⇒ Boolean
-
#negative? ⇒ true, false
True if this token is for negative filter.
-
#or? ⇒ true, false
This.
-
#positive? ⇒ true, false
Opposite of #negative?.
-
#proper_cased_term ⇒ String
Downcased or not-downcased term.
-
#quoted? ⇒ true, false
True if this token is for phrase matching.
- #to_hash ⇒ Object
Constructor Details
#initialize(downcased: nil, field_name: nil, minus: nil, quoted: nil, term: nil, token_string: nil) ⇒ Token
7 8 9 10 11 12 13 14 |
# File 'lib/qiita/elasticsearch/token.rb', line 7 def initialize(downcased: nil, field_name: nil, minus: nil, quoted: nil, term: nil, token_string: nil) @downcased = downcased @field_name = field_name @minus = minus @quoted = quoted @term = term @token_string = token_string end |
Instance Attribute Details
#field_name ⇒ Object (readonly)
Returns the value of attribute field_name.
4 5 6 |
# File 'lib/qiita/elasticsearch/token.rb', line 4 def field_name @field_name end |
#term ⇒ Object (readonly)
Returns the value of attribute term.
4 5 6 |
# File 'lib/qiita/elasticsearch/token.rb', line 4 def term @term end |
Instance Method Details
#downcased? ⇒ true, false
17 18 19 |
# File 'lib/qiita/elasticsearch/token.rb', line 17 def downcased? !!@downcased end |
#downcased_term ⇒ Object
21 22 23 |
# File 'lib/qiita/elasticsearch/token.rb', line 21 def downcased_term @downcased_term ||= term.downcase end |
#filter? ⇒ Boolean
29 30 31 |
# File 'lib/qiita/elasticsearch/token.rb', line 29 def filter? !field_name.nil? || negative? end |
#must? ⇒ Boolean
33 34 35 |
# File 'lib/qiita/elasticsearch/token.rb', line 33 def must? !field_name.nil? && positive? end |
#must_not? ⇒ Boolean
37 38 39 |
# File 'lib/qiita/elasticsearch/token.rb', line 37 def must_not? negative? end |
#negative? ⇒ true, false
Note:
‘Ruby -Perl` ^^^^^ This
Returns True if this token is for negative filter.
45 46 47 |
# File 'lib/qiita/elasticsearch/token.rb', line 45 def negative? !positive? end |
#or? ⇒ true, false
Note:
‘Ruby OR Perl` ^^
This
53 54 55 |
# File 'lib/qiita/elasticsearch/token.rb', line 53 def or? @token_string.downcase == "or" end |
#positive? ⇒ true, false
58 59 60 |
# File 'lib/qiita/elasticsearch/token.rb', line 58 def positive? @minus.nil? end |
#proper_cased_term ⇒ String
63 64 65 66 67 68 69 |
# File 'lib/qiita/elasticsearch/token.rb', line 63 def proper_cased_term if downcased? downcased_term else term end end |
#quoted? ⇒ true, false
Note:
‘Express OR “Ruby on Rails”` ^^^^^^^^^^^^^^^
This
Returns True if this token is for phrase matching.
75 76 77 |
# File 'lib/qiita/elasticsearch/token.rb', line 75 def quoted? !!@quoted end |
#to_hash ⇒ Object
25 26 27 |
# File 'lib/qiita/elasticsearch/token.rb', line 25 def to_hash fail NotImplementedError end |