Class: RediSearch::Search::Queries::Boolean

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/redi_search/search/queries/boolean.rb

Direct Known Subclasses

And, Or

Instance Method Summary collapse

Constructor Details

#initialize(search, term, prior_clause = nil, **term_options) ⇒ Boolean

Returns a new instance of Boolean.



9
10
11
12
13
14
15
# File 'lib/redi_search/search/queries/boolean.rb', line 9

def initialize(search, term, prior_clause = nil, **term_options)
  @search = search
  @prior_clause = prior_clause
  @not = false

  initialize_term(term, **term_options) if term
end

Instance Method Details

#not(term, **term_options) ⇒ Object



25
26
27
28
29
30
31
# File 'lib/redi_search/search/queries/boolean.rb', line 25

def not(term, **term_options)
  @not = true

  initialize_term(term, **term_options) if term

  search
end

#to_sObject

Raises:

  • (ArgumentError)


17
18
19
20
21
# File 'lib/redi_search/search/queries/boolean.rb', line 17

def to_s
  raise ArgumentError, "missing query terms" unless term

  [prior_clause, queryify_term].compact.join(operand)
end