2 #ifndef _MADARA_PRINT_VISITOR_H_ 3 #define _MADARA_PRINT_VISITOR_H_ 19 class PrintVisitor :
public Visitor
26 virtual void visit (
const LeafNode &node);
32 virtual void visit (
const VariableNode &node);
38 virtual void visit (
const VariableDecrementNode &node);
44 virtual void visit (
const VariableDivideNode &node);
50 virtual void visit (
const VariableIncrementNode &node);
56 virtual void visit (
const VariableMultiplyNode &node);
62 virtual void visit (
const VariableCompareNode &node);
68 virtual void visit (
const ListNode &node);
74 virtual void visit (
const CompositeNegateNode &node);
80 virtual void visit (
const CompositePredecrementNode &node);
86 virtual void visit (
const CompositePreincrementNode &node);
92 virtual void visit (
const CompositeNotNode &node);
98 virtual void visit (
const CompositeAddNode &node);
104 virtual void visit (
const CompositeAssignmentNode &node);
111 virtual void visit (
const CompositeAndNode &node);
117 virtual void visit (
const CompositeOrNode &node);
123 virtual void visit (
const CompositeEqualityNode &node);
129 virtual void visit (
const CompositeInequalityNode &node);
135 virtual void visit (
const CompositeGreaterThanEqualNode &node);
141 virtual void visit (
const CompositeGreaterThanNode &node);
147 virtual void visit (
const CompositeLessThanEqualNode &node);
153 virtual void visit (
const CompositeLessThanNode &node);
159 virtual void visit (
const CompositeSubtractNode &node);
165 virtual void visit (
const CompositeDivideNode &node);
171 virtual void visit (
const CompositeMultiplyNode &node);
177 virtual void visit (
const CompositeModulusNode &node);
183 virtual void visit (
const CompositeBothNode &node);
189 virtual void visit (
const CompositeSequentialNode &node);
195 virtual void visit (
const CompositeFunctionNode &node);
201 virtual void visit (
const CompositeForLoop &node);
207 virtual void visit (
const CompositeImpliesNode &node);
213 #endif // _USE_VISITORS_
Copyright (c) 2015 Carnegie Mellon University.