retdec
visitor_adapter.h
Go to the documentation of this file.
1 
7 #ifndef RETDEC_LLVMIR2HLL_SUPPORT_VISITOR_ADAPTER_H
8 #define RETDEC_LLVMIR2HLL_SUPPORT_VISITOR_ADAPTER_H
9 
12 
13 namespace retdec {
14 namespace llvmir2hll {
15 
30 class VisitorAdapter: public Visitor {
31 public:
34  virtual void visit(ShPtr<GlobalVarDef> varDef) override {}
35  virtual void visit(ShPtr<Function> func) override {}
36  // Statements
37  virtual void visit(ShPtr<AssignStmt> stmt) override {}
38  virtual void visit(ShPtr<BreakStmt> stmt) override {}
39  virtual void visit(ShPtr<CallStmt> stmt) override {}
40  virtual void visit(ShPtr<ContinueStmt> stmt) override {}
41  virtual void visit(ShPtr<EmptyStmt> stmt) override {}
42  virtual void visit(ShPtr<ForLoopStmt> stmt) override {}
43  virtual void visit(ShPtr<UForLoopStmt> stmt) override {}
44  virtual void visit(ShPtr<GotoStmt> stmt) override {}
45  virtual void visit(ShPtr<IfStmt> stmt) override {}
46  virtual void visit(ShPtr<ReturnStmt> stmt) override {}
47  virtual void visit(ShPtr<SwitchStmt> stmt) override {}
48  virtual void visit(ShPtr<UnreachableStmt> stmt) override {}
49  virtual void visit(ShPtr<VarDefStmt> stmt) override {}
50  virtual void visit(ShPtr<WhileLoopStmt> stmt) override {}
51  // Expressions
52  virtual void visit(ShPtr<AddOpExpr> expr) override {}
53  virtual void visit(ShPtr<AddressOpExpr> expr) override {}
54  virtual void visit(ShPtr<AssignOpExpr> expr) override {}
55  virtual void visit(ShPtr<AndOpExpr> expr) override {}
56  virtual void visit(ShPtr<ArrayIndexOpExpr> expr) override {}
57  virtual void visit(ShPtr<BitAndOpExpr> expr) override {}
58  virtual void visit(ShPtr<BitOrOpExpr> expr) override {}
59  virtual void visit(ShPtr<BitShlOpExpr> expr) override {}
60  virtual void visit(ShPtr<BitShrOpExpr> expr) override {}
61  virtual void visit(ShPtr<BitXorOpExpr> expr) override {}
62  virtual void visit(ShPtr<CallExpr> expr) override {}
63  virtual void visit(ShPtr<CommaOpExpr> expr) override {}
64  virtual void visit(ShPtr<DerefOpExpr> expr) override {}
65  virtual void visit(ShPtr<DivOpExpr> expr) override {}
66  virtual void visit(ShPtr<EqOpExpr> expr) override {}
67  virtual void visit(ShPtr<GtEqOpExpr> expr) override {}
68  virtual void visit(ShPtr<GtOpExpr> expr) override {}
69  virtual void visit(ShPtr<LtEqOpExpr> expr) override {}
70  virtual void visit(ShPtr<LtOpExpr> expr) override {}
71  virtual void visit(ShPtr<ModOpExpr> expr) override {}
72  virtual void visit(ShPtr<MulOpExpr> expr) override {}
73  virtual void visit(ShPtr<NegOpExpr> expr) override {}
74  virtual void visit(ShPtr<NeqOpExpr> expr) override {}
75  virtual void visit(ShPtr<NotOpExpr> expr) override {}
76  virtual void visit(ShPtr<OrOpExpr> expr) override {}
77  virtual void visit(ShPtr<StructIndexOpExpr> expr) override {}
78  virtual void visit(ShPtr<SubOpExpr> expr) override {}
79  virtual void visit(ShPtr<TernaryOpExpr> expr) override {}
80  virtual void visit(ShPtr<Variable> var) override {}
81  // Casts
82  virtual void visit(ShPtr<BitCastExpr> expr) override {}
83  virtual void visit(ShPtr<ExtCastExpr> expr) override {}
84  virtual void visit(ShPtr<FPToIntCastExpr> expr) override {}
85  virtual void visit(ShPtr<IntToFPCastExpr> expr) override {}
86  virtual void visit(ShPtr<IntToPtrCastExpr> expr) override {}
87  virtual void visit(ShPtr<PtrToIntCastExpr> expr) override {}
88  virtual void visit(ShPtr<TruncCastExpr> expr) override {}
89  // Constants
90  virtual void visit(ShPtr<ConstArray> constant) override {}
91  virtual void visit(ShPtr<ConstBool> constant) override {}
92  virtual void visit(ShPtr<ConstFloat> constant) override {}
93  virtual void visit(ShPtr<ConstInt> constant) override {}
94  virtual void visit(ShPtr<ConstNullPointer> constant) override {}
95  virtual void visit(ShPtr<ConstString> constant) override {}
96  virtual void visit(ShPtr<ConstStruct> constant) override {}
97  virtual void visit(ShPtr<ConstSymbol> constant) override {}
98  // Types
99  virtual void visit(ShPtr<ArrayType> type) override {}
100  virtual void visit(ShPtr<FloatType> type) override {}
101  virtual void visit(ShPtr<IntType> type) override {}
102  virtual void visit(ShPtr<PointerType> type) override {}
103  virtual void visit(ShPtr<StringType> type) override {}
104  virtual void visit(ShPtr<StructType> type) override {}
105  virtual void visit(ShPtr<FunctionType> type) override {}
106  virtual void visit(ShPtr<VoidType> type) override {}
107  virtual void visit(ShPtr<UnknownType> type) override {}
109 };
110 
111 } // namespace llvmir2hll
112 } // namespace retdec
113 
114 #endif
A visitor whose visit methods do nothing by default.
Definition: visitor_adapter.h:30
virtual void visit(ShPtr< ConstArray > constant) override
Definition: visitor_adapter.h:90
virtual void visit(ShPtr< CallExpr > expr) override
Definition: visitor_adapter.h:62
virtual void visit(ShPtr< BitShrOpExpr > expr) override
Definition: visitor_adapter.h:60
virtual void visit(ShPtr< EqOpExpr > expr) override
Definition: visitor_adapter.h:66
virtual void visit(ShPtr< DerefOpExpr > expr) override
Definition: visitor_adapter.h:64
virtual void visit(ShPtr< VarDefStmt > stmt) override
Definition: visitor_adapter.h:49
virtual void visit(ShPtr< CommaOpExpr > expr) override
Definition: visitor_adapter.h:63
virtual void visit(ShPtr< LtOpExpr > expr) override
Definition: visitor_adapter.h:70
virtual void visit(ShPtr< StructType > type) override
Definition: visitor_adapter.h:104
virtual void visit(ShPtr< TernaryOpExpr > expr) override
Definition: visitor_adapter.h:79
virtual void visit(ShPtr< DivOpExpr > expr) override
Definition: visitor_adapter.h:65
virtual void visit(ShPtr< NeqOpExpr > expr) override
Definition: visitor_adapter.h:74
virtual void visit(ShPtr< UnknownType > type) override
Definition: visitor_adapter.h:107
virtual void visit(ShPtr< ConstNullPointer > constant) override
Definition: visitor_adapter.h:94
virtual void visit(ShPtr< StringType > type) override
Definition: visitor_adapter.h:103
virtual void visit(ShPtr< UnreachableStmt > stmt) override
Definition: visitor_adapter.h:48
virtual void visit(ShPtr< Function > func) override
Definition: visitor_adapter.h:35
virtual void visit(ShPtr< AssignOpExpr > expr) override
Definition: visitor_adapter.h:54
virtual void visit(ShPtr< IntType > type) override
Definition: visitor_adapter.h:101
virtual void visit(ShPtr< SwitchStmt > stmt) override
Definition: visitor_adapter.h:47
virtual void visit(ShPtr< PointerType > type) override
Definition: visitor_adapter.h:102
virtual void visit(ShPtr< ConstString > constant) override
Definition: visitor_adapter.h:95
virtual void visit(ShPtr< BitCastExpr > expr) override
Definition: visitor_adapter.h:82
virtual void visit(ShPtr< FPToIntCastExpr > expr) override
Definition: visitor_adapter.h:84
virtual void visit(ShPtr< BitOrOpExpr > expr) override
Definition: visitor_adapter.h:58
virtual void visit(ShPtr< ForLoopStmt > stmt) override
Definition: visitor_adapter.h:42
virtual void visit(ShPtr< ArrayIndexOpExpr > expr) override
Definition: visitor_adapter.h:56
virtual void visit(ShPtr< SubOpExpr > expr) override
Definition: visitor_adapter.h:78
virtual void visit(ShPtr< ModOpExpr > expr) override
Definition: visitor_adapter.h:71
virtual void visit(ShPtr< GtOpExpr > expr) override
Definition: visitor_adapter.h:68
virtual void visit(ShPtr< OrOpExpr > expr) override
Definition: visitor_adapter.h:76
virtual void visit(ShPtr< StructIndexOpExpr > expr) override
Definition: visitor_adapter.h:77
virtual void visit(ShPtr< GlobalVarDef > varDef) override
Definition: visitor_adapter.h:34
virtual void visit(ShPtr< FloatType > type) override
Definition: visitor_adapter.h:100
virtual void visit(ShPtr< AddOpExpr > expr) override
Definition: visitor_adapter.h:52
virtual void visit(ShPtr< UForLoopStmt > stmt) override
Definition: visitor_adapter.h:43
virtual void visit(ShPtr< ConstInt > constant) override
Definition: visitor_adapter.h:93
virtual void visit(ShPtr< IntToFPCastExpr > expr) override
Definition: visitor_adapter.h:85
virtual void visit(ShPtr< AssignStmt > stmt) override
Definition: visitor_adapter.h:37
virtual void visit(ShPtr< IntToPtrCastExpr > expr) override
Definition: visitor_adapter.h:86
virtual void visit(ShPtr< ConstBool > constant) override
Definition: visitor_adapter.h:91
virtual void visit(ShPtr< GtEqOpExpr > expr) override
Definition: visitor_adapter.h:67
virtual void visit(ShPtr< ConstFloat > constant) override
Definition: visitor_adapter.h:92
virtual void visit(ShPtr< PtrToIntCastExpr > expr) override
Definition: visitor_adapter.h:87
virtual void visit(ShPtr< WhileLoopStmt > stmt) override
Definition: visitor_adapter.h:50
virtual void visit(ShPtr< FunctionType > type) override
Definition: visitor_adapter.h:105
virtual void visit(ShPtr< ReturnStmt > stmt) override
Definition: visitor_adapter.h:46
virtual void visit(ShPtr< Variable > var) override
Definition: visitor_adapter.h:80
virtual void visit(ShPtr< ConstStruct > constant) override
Definition: visitor_adapter.h:96
virtual void visit(ShPtr< LtEqOpExpr > expr) override
Definition: visitor_adapter.h:69
virtual void visit(ShPtr< NegOpExpr > expr) override
Definition: visitor_adapter.h:73
virtual void visit(ShPtr< EmptyStmt > stmt) override
Definition: visitor_adapter.h:41
virtual void visit(ShPtr< MulOpExpr > expr) override
Definition: visitor_adapter.h:72
virtual void visit(ShPtr< BitShlOpExpr > expr) override
Definition: visitor_adapter.h:59
virtual void visit(ShPtr< IfStmt > stmt) override
Definition: visitor_adapter.h:45
virtual void visit(ShPtr< AddressOpExpr > expr) override
Definition: visitor_adapter.h:53
virtual void visit(ShPtr< ExtCastExpr > expr) override
Definition: visitor_adapter.h:83
virtual void visit(ShPtr< ConstSymbol > constant) override
Definition: visitor_adapter.h:97
virtual void visit(ShPtr< BitAndOpExpr > expr) override
Definition: visitor_adapter.h:57
virtual void visit(ShPtr< ContinueStmt > stmt) override
Definition: visitor_adapter.h:40
virtual void visit(ShPtr< CallStmt > stmt) override
Definition: visitor_adapter.h:39
virtual void visit(ShPtr< TruncCastExpr > expr) override
Definition: visitor_adapter.h:88
virtual void visit(ShPtr< AndOpExpr > expr) override
Definition: visitor_adapter.h:55
virtual void visit(ShPtr< BreakStmt > stmt) override
Definition: visitor_adapter.h:38
virtual void visit(ShPtr< BitXorOpExpr > expr) override
Definition: visitor_adapter.h:61
virtual void visit(ShPtr< NotOpExpr > expr) override
Definition: visitor_adapter.h:75
virtual void visit(ShPtr< GotoStmt > stmt) override
Definition: visitor_adapter.h:44
virtual void visit(ShPtr< VoidType > type) override
Definition: visitor_adapter.h:106
virtual void visit(ShPtr< ArrayType > type) override
Definition: visitor_adapter.h:99
A base class of all visitors.
Definition: visitor.h:95
A base class of all visitors.
A library providing API for working with back-end IR.
std::shared_ptr< T > ShPtr
An alias for a shared pointer.
Definition: smart_ptr.h:18
Definition: archive_wrapper.h:19
Declarations, aliases, macros, etc. for the use of smart pointers.