class RD::Visitor
Constants
- SYSTEM_NAME
- SYSTEM_VERSION
- VERSION
Public Class Methods
define_visit_Nonterminal(element_type)
click to toggle source
# File lib/rd/visitor.rb, line 25 def Visitor.define_visit_Nonterminal(element_type) eval <<-END_OF_EVAL def visit_#{element_type.id2name}(element) apply_to_#{element_type.id2name}(element, visit_children(element)) end END_OF_EVAL end
define_visit_Terminal(element_type)
click to toggle source
# File lib/rd/visitor.rb, line 33 def Visitor.define_visit_Terminal(element_type) eval <<-END_OF_EVAL def visit_#{element_type.id2name}(element) apply_to_#{element_type.id2name}(element) end END_OF_EVAL end
version()
click to toggle source
# File lib/rd/visitor.rb, line 9 def Visitor.version VERSION end
Public Instance Methods
visit(tree)
click to toggle source
# File lib/rd/visitor.rb, line 13 def visit(tree) tree.accept(self) end
visit_DescListItem(element)
click to toggle source
# File lib/rd/visitor.rb, line 55 def visit_DescListItem(element) term = element.term.accept(self) apply_to_DescListItem(element, term, visit_children(element)) end
visit_MethodListItem(element)
click to toggle source
# File lib/rd/visitor.rb, line 62 def visit_MethodListItem(element) term = element.term.accept(self) apply_to_MethodListItem(element, term, visit_children(element)) end
visit_Reference(element)
click to toggle source
# File lib/rd/visitor.rb, line 77 def visit_Reference(element) children = visit_children(element) begin element.result_of_apply_method_of(self, children) rescue NameError apply_to_Reference(element, children) end end
visit_children(element)
click to toggle source
# File lib/rd/visitor.rb, line 17 def visit_children(element) ret = [] element.each_child do |i| ret.push(i.accept(self)) end ret end