JODA  0.13.1 (59b41972)
JSON On-Demand Analysis
PredicateVisitor.h
Go to the documentation of this file.
1 //
2 // Created by Nico Schäfer on 6/26/17.
3 //
4 
5 #ifndef JODA_PREDICATEVISITOR_H
6 #define JODA_PREDICATEVISITOR_H
7 
8 #include <cassert>
9 #include <memory>
10 
11 namespace joda::query {
12 class AndPredicate;
13 
14 class NegatePredicate;
15 
16 class OrPredicate;
17 
18 class EqualizePredicate;
19 
20 class ComparePredicate;
21 
22 class Predicate;
23 
24 class ValToPredicate;
25 
30  public:
35  virtual void visit(AndPredicate* e) = 0;
36 
41  virtual void visit(NegatePredicate* e) = 0;
42 
47  virtual void visit(OrPredicate* e) = 0;
48 
53  virtual void visit(EqualizePredicate* e) = 0;
54 
59  virtual void visit(ComparePredicate* e) = 0;
60 
65  virtual void visit(ValToPredicate* e) = 0;
66 };
67 } // namespace joda::query
68 
69 #endif // JODA_PREDICATEVISITOR_H
Definition: AndPredicate.h:13
Definition: ComparePredicate.h:25
Definition: EqualizePredicate.h:25
Definition: NegatePredicate.h:15
Definition: OrPredicate.h:15
Definition: PredicateVisitor.h:29
virtual void visit(ValToPredicate *e)=0
virtual void visit(OrPredicate *e)=0
virtual void visit(ComparePredicate *e)=0
virtual void visit(AndPredicate *e)=0
virtual void visit(NegatePredicate *e)=0
virtual void visit(EqualizePredicate *e)=0
Definition: ValToPredicate.h:17
Definition: AttributeStatAggregator.h:12