1 2 3 4 5 6 7
class PreOrderTraversal def traverse(node, visitor) visitor.visit(node) node.left.accept(visitor, self) if node.left node.right.accept(visitor, self) if node.right end end