Class: Qiita::Elasticsearch::Token

Inherits:
Object
  • Object
show all
Defined in:
lib/qiita/elasticsearch/token.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

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_nameObject (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

#termObject (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_termObject



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_termString



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_hashObject



25
26
27
# File 'lib/qiita/elasticsearch/token.rb', line 25

def to_hash
  fail NotImplementedError
end