7 #ifndef RETDEC_LLVMIR2HLL_SUPPORT_VISITOR_H
8 #define RETDEC_LLVMIR2HLL_SUPPORT_VISITOR_H
18 class ArrayIndexOpExpr;
36 class ConstNullPointer;
47 class FPToIntCastExpr;
58 class IntToFPCastExpr;
59 class IntToPtrCastExpr;
71 class PtrToIntCastExpr;
75 class StructIndexOpExpr;
83 class UnreachableStmt;
A base class of all visitors.
Definition: visitor.h:95
virtual void visit(ShPtr< NegOpExpr > expr)=0
virtual void visit(ShPtr< UnreachableStmt > stmt)=0
virtual ~Visitor()=default
virtual void visit(ShPtr< LtOpExpr > expr)=0
virtual void visit(ShPtr< ConstFloat > constant)=0
virtual void visit(ShPtr< ReturnStmt > stmt)=0
virtual void visit(ShPtr< StructType > type)=0
virtual void visit(ShPtr< DerefOpExpr > expr)=0
virtual void visit(ShPtr< MulOpExpr > expr)=0
virtual void visit(ShPtr< VarDefStmt > stmt)=0
virtual void visit(ShPtr< FunctionType > type)=0
virtual void visit(ShPtr< ConstString > constant)=0
virtual void visit(ShPtr< ConstSymbol > constant)=0
virtual void visit(ShPtr< IntType > type)=0
virtual void visit(ShPtr< BitShrOpExpr > expr)=0
virtual void visit(ShPtr< AssignStmt > stmt)=0
virtual void visit(ShPtr< IntToFPCastExpr > expr)=0
virtual void visit(ShPtr< AddOpExpr > expr)=0
virtual void visit(ShPtr< BitXorOpExpr > expr)=0
virtual void visit(ShPtr< IfStmt > stmt)=0
virtual void visit(ShPtr< DivOpExpr > expr)=0
virtual void visit(ShPtr< SwitchStmt > stmt)=0
virtual void visit(ShPtr< BitCastExpr > expr)=0
virtual void visit(ShPtr< ConstStruct > constant)=0
virtual void visit(ShPtr< StructIndexOpExpr > expr)=0
virtual void visit(ShPtr< EqOpExpr > expr)=0
virtual void visit(ShPtr< GtOpExpr > expr)=0
virtual void visit(ShPtr< PointerType > type)=0
virtual void visit(ShPtr< BreakStmt > stmt)=0
virtual void visit(ShPtr< UForLoopStmt > stmt)=0
virtual void visit(ShPtr< OrOpExpr > expr)=0
virtual void visit(ShPtr< AndOpExpr > expr)=0
virtual void visit(ShPtr< GlobalVarDef > varDef)=0
virtual void visit(ShPtr< NotOpExpr > expr)=0
virtual void visit(ShPtr< UnknownType > type)=0
virtual void visit(ShPtr< WhileLoopStmt > stmt)=0
virtual void visit(ShPtr< LtEqOpExpr > expr)=0
virtual void visit(ShPtr< NeqOpExpr > expr)=0
virtual void visit(ShPtr< GtEqOpExpr > expr)=0
virtual void visit(ShPtr< CallExpr > expr)=0
virtual void visit(ShPtr< ConstNullPointer > constant)=0
virtual void visit(ShPtr< EmptyStmt > stmt)=0
virtual void visit(ShPtr< PtrToIntCastExpr > expr)=0
virtual void visit(ShPtr< Function > func)=0
virtual void visit(ShPtr< ExtCastExpr > expr)=0
virtual void visit(ShPtr< BitShlOpExpr > expr)=0
virtual void visit(ShPtr< Variable > var)=0
virtual void visit(ShPtr< AddressOpExpr > expr)=0
virtual void visit(ShPtr< BitAndOpExpr > expr)=0
virtual void visit(ShPtr< ConstInt > constant)=0
virtual void visit(ShPtr< VoidType > type)=0
virtual void visit(ShPtr< GotoStmt > stmt)=0
virtual void visit(ShPtr< ConstArray > constant)=0
virtual void visit(ShPtr< CommaOpExpr > expr)=0
virtual void visit(ShPtr< FPToIntCastExpr > expr)=0
virtual void visit(ShPtr< IntToPtrCastExpr > expr)=0
virtual void visit(ShPtr< ForLoopStmt > stmt)=0
virtual void visit(ShPtr< SubOpExpr > expr)=0
virtual void visit(ShPtr< CallStmt > stmt)=0
virtual void visit(ShPtr< TernaryOpExpr > expr)=0
virtual void visit(ShPtr< ModOpExpr > expr)=0
virtual void visit(ShPtr< TruncCastExpr > expr)=0
virtual void visit(ShPtr< FloatType > type)=0
virtual void visit(ShPtr< StringType > type)=0
virtual void visit(ShPtr< AssignOpExpr > expr)=0
virtual void visit(ShPtr< BitOrOpExpr > expr)=0
virtual void visit(ShPtr< ArrayType > type)=0
virtual void visit(ShPtr< ContinueStmt > stmt)=0
virtual void visit(ShPtr< ConstBool > constant)=0
virtual void visit(ShPtr< ArrayIndexOpExpr > expr)=0
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.