Class CallGraphBuilder#

Class Documentation#

class CallGraphBuilder#

Public Functions

CallGraphBuilder(SgProject *proj)#
void buildCallGraph()#

Default builder filtering nothing in the call graph.

template<typename Predicate>
void buildCallGraph(Predicate pred)#

Builder accepting user defined predicate to filter certain functions.

SgIncidenceDirectedGraph *getGraph()#

Grab the call graph built.

inline std::unordered_map<SgFunctionDeclaration*, SgGraphNode*> &getGraphNodesMapping()#
SgGraphNode *hasGraphNodeFor(SgFunctionDeclaration *fdecl) const#

Retrieve the node matching a function declaration using firstNondefiningDeclaration (does not work across translation units)

SgGraphNode *getGraphNodeFor(SgFunctionDeclaration *fdecl) const#

Retrieve the node matching a function declaration (using mangled name to resolve across translation units)