Class: Elasticfusion::Search::Query::Visitor

Inherits:
Object
  • Object
show all
Defined in:
lib/elasticfusion/search/query/visitor.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.visitor_method(node) ⇒ Object



16
17
18
# File 'lib/elasticfusion/search/query/visitor.rb', line 16

def self.visitor_method(node)
  (@visitor_methods ||= {})[node.class] ||= "visit_#{node.class.name.demodulize}"
end

Instance Method Details

#accept(node) ⇒ Object



6
7
8
# File 'lib/elasticfusion/search/query/visitor.rb', line 6

def accept(node)
  visit(node)
end

#visit(node) ⇒ Object



12
13
14
# File 'lib/elasticfusion/search/query/visitor.rb', line 12

def visit(node)
  send Visitor.visitor_method(node), node
end