7 #ifndef RETDEC_LLVMIR2HLL_OBTAINER_CALLS_IN_MODULE_OBTAINER_H
8 #define RETDEC_LLVMIR2HLL_OBTAINER_CALLS_IN_MODULE_OBTAINER_H
46 using Calls = std::vector<CallInfo>;
An obtainer of information about function calls in a module.
Definition: calls_in_module_obtainer.h:28
Calls foundCalls
Found function calls.
Definition: calls_in_module_obtainer.h:73
CallsInModuleObtainer(ShPtr< Module > module)
Constructs a new obtainer.
Definition: calls_in_module_obtainer.cpp:20
Calls getCallsImpl()
Implementation of getCalls().
Definition: calls_in_module_obtainer.cpp:40
virtual void visit(ShPtr< GlobalVarDef > varDef) override
Definition: ordered_all_visitor.cpp:95
void obtainCallsInFuncs()
Obtain calls in all functions and puts them into foundCalls.
Definition: calls_in_module_obtainer.cpp:59
ShPtr< Function > currFunc
The currently traversed function.
Definition: calls_in_module_obtainer.h:70
ShPtr< Module > module
Module in which the calls are searched.
Definition: calls_in_module_obtainer.h:67
static Calls getCalls(ShPtr< Module > module)
Returns a list of all function calls in the given module.
Definition: calls_in_module_obtainer.cpp:29
void obtainCallsInFunc(ShPtr< Function > func)
Obtain calls in all the given function and puts them into foundCalls.
Definition: calls_in_module_obtainer.cpp:70
std::vector< CallInfo > Calls
A list of calls.
Definition: calls_in_module_obtainer.h:46
void obtainCallsInGlobalVars()
Obtain calls in all global variables and puts them into foundCalls.
Definition: calls_in_module_obtainer.cpp:49
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
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.
Information about a single call.
Definition: calls_in_module_obtainer.h:31
ShPtr< Function > func
The function in which the call appears.
Definition: calls_in_module_obtainer.h:39
ShPtr< CallExpr > call
The call itself.
Definition: calls_in_module_obtainer.h:33
ShPtr< Module > module
The module in which the function appears.
Definition: calls_in_module_obtainer.h:42
ShPtr< Statement > stmt
The statement in which the call appears.
Definition: calls_in_module_obtainer.h:36