retdec
calls_obtainer.h
Go to the documentation of this file.
1 
7 #ifndef RETDEC_LLVMIR2HLL_OBTAINER_CALLS_OBTAINER_H
8 #define RETDEC_LLVMIR2HLL_OBTAINER_CALLS_OBTAINER_H
9 
14 
15 namespace retdec {
16 namespace llvmir2hll {
17 
18 class Value;
19 
28 public:
29  static CallVector getCalls(ShPtr<Value> value);
30  static bool hasCalls(ShPtr<Value> value);
31 
32 private:
33  CallsObtainer();
34 
38  virtual void visit(ShPtr<CallExpr> expr) override;
40 
41 private:
44 };
45 
46 } // namespace llvmir2hll
47 } // namespace retdec
48 
49 #endif
An obtainer of information about function calls.
Definition: calls_obtainer.h:27
CallVector foundCalls
Found function calls.
Definition: calls_obtainer.h:43
CallsObtainer()
Constructs a new obtainer.
Definition: calls_obtainer.cpp:17
virtual void visit(ShPtr< GlobalVarDef > varDef) override
Definition: ordered_all_visitor.cpp:95
static CallVector getCalls(ShPtr< Value > value)
Returns a list of all function calls in the given value.
Definition: calls_obtainer.cpp:40
static bool hasCalls(ShPtr< Value > value)
Returns true if the selected value contains some function calls, false otherwise.
Definition: calls_obtainer.cpp:54
A visitor that visits everything in an ordered way.
Definition: ordered_all_visitor.h:44
virtual void visit(ShPtr< GlobalVarDef > varDef) override
Definition: ordered_all_visitor.cpp:95
A mixin to make classes non-copyable.
Definition: non_copyable.h:27
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
std::vector< ShPtr< CallExpr > > CallVector
Vector of function calls.
Definition: types.h:102
Definition: archive_wrapper.h:19
A mixin to make classes non-copyable.
A visitor that visits everything in an ordered way.
Declarations, aliases, macros, etc. for the use of smart pointers.
Aliases for several useful types.