MADARA  3.1.8
EvaluationVisitor.h
Go to the documentation of this file.
1 /* -*- C++ -*- */
2 #ifndef _MADARA_EVALUATION_VISITOR_H_
3 #define _MADARA_EVALUATION_VISITOR_H_
4 
5 #ifdef _USE_VISITORS_
6 
10 
11 namespace madara
12 {
13  namespace expression
14  {
22  class EvaluationVisitor : public Visitor
23  {
24  public:
29  virtual void visit (const LeafNode &node);
30 
35  virtual void visit (const VariableNode &node);
36 
41  virtual void visit (const VariableDecrementNode &node);
42 
47  virtual void visit (const VariableDivideNode &node);
48 
53  virtual void visit (const VariableIncrementNode &node);
54 
59  virtual void visit (const VariableMultiplyNode &node);
60 
65  virtual void visit (const VariableCompareNode &node);
66 
71  virtual void visit (const ListNode &node);
72 
77  virtual void visit (const CompositeNegateNode &node);
78 
83  virtual void visit (const CompositePredecrementNode &node);
84 
89  virtual void visit (const CompositePreincrementNode &node);
90 
95  virtual void visit (const CompositeNotNode &node);
96 
101  virtual void visit (const CompositeAddNode &node);
102 
107  virtual void visit (const CompositeAssignmentNode &node);
108 
109 
114  virtual void visit (const CompositeAndNode &node);
115 
120  virtual void visit (const CompositeOrNode &node);
121 
126  virtual void visit (const CompositeEqualityNode &node);
127 
132  virtual void visit (const CompositeInequalityNode &node);
133 
138  virtual void visit (const CompositeGreaterThanEqualNode &node);
139 
144  virtual void visit (const CompositeGreaterThanNode &node);
145 
150  virtual void visit (const CompositeLessThanEqualNode &node);
151 
156  virtual void visit (const CompositeLessThanNode &node);
157 
162  virtual void visit (const CompositeSubtractNode &node);
163 
168  virtual void visit (const CompositeDivideNode &node);
169 
174  virtual void visit (const CompositeMultiplyNode &node);
175 
180  virtual void visit (const CompositeModulusNode &node);
181 
186  virtual void visit (const CompositeBothNode &node);
187 
192  virtual void visit (const CompositeSequentialNode &node);
193 
198  virtual void visit (const CompositeFunctionNode &node);
199 
204  virtual void visit (const CompositeForLoop &node);
205 
210  virtual void visit (const CompositeImpliesNode &node);
211 
217 
221  void reset (void);
222 
223  private:
226  };
227  }
228 }
229 
230 #endif // _USE_VISITORS_
231 
232 #endif /* _MADARA_EVALUATION_VISITOR_H_ */
Defines a generic "last-in/first-out" (LIFO) Abstract Data Type (ADT) using a stack that's implemente...
Definition: LStack.h:29
Copyright (c) 2015 Carnegie Mellon University.