module SearchCopGrammar::Nodes::Base

Public Instance Methods

and(node) click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 6
def and(node)
  And.new self, node
end
can_flatten?() click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 18
def can_flatten?
  false
end
can_group?() click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 26
def can_group?
  false
end
can_optimize?() click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 38
def can_optimize?
  can_flatten? || can_group?
end
finalize!() click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 48
def finalize!
  self
end
flatten!() click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 22
def flatten!
  self
end
fulltext?() click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 34
def fulltext?
  false
end
group!() click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 30
def group!
  self
end
nodes() click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 52
def nodes
  []
end
not() click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 14
def not
  Not.new self
end
optimize!() click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 42
def optimize!
  flatten!.group! while can_optimize?

  finalize!
end
or(node) click to toggle source
# File lib/search_cop_grammar/nodes.rb, line 10
def or(node)
  Or.new self, node
end