Lines Matching defs:CallGraphNode

27 class CallGraphNode;
35 friend class CallGraphNode;
37 typedef llvm::DenseMap<const Decl *, CallGraphNode *> FunctionMapTy;
43 CallGraphNode *Root;
61 CallGraphNode *getNode(const Decl *) const;
65 CallGraphNode *getOrInsertNode(Decl *);
81 CallGraphNode *getRoot() const { return Root; }
86 typedef llvm::SetVector<CallGraphNode *>::iterator nodes_iterator;
87 typedef llvm::SetVector<CallGraphNode *>::const_iterator const_nodes_iterator;
130 CallGraphNode *allocateNewNode(Decl *);
133 class CallGraphNode {
135 typedef CallGraphNode* CallRecord;
145 CallGraphNode(Decl *D) : FD(D) {}
159 void addCallee(CallGraphNode *N, CallGraph *CG) {
173 template <> struct GraphTraits<clang::CallGraphNode*> {
174 typedef clang::CallGraphNode NodeType;
175 typedef clang::CallGraphNode::CallRecord CallRecordTy;
177 clang::CallGraphNode*> CGNDerefFun;
178 static NodeType *getEntryNode(clang::CallGraphNode *CGN) { return CGN; }
186 static clang::CallGraphNode *CGNDeref(CallRecordTy P) {
191 template <> struct GraphTraits<const clang::CallGraphNode*> {
192 typedef const clang::CallGraphNode NodeType;
194 static NodeType *getEntryNode(const clang::CallGraphNode *CGN) { return CGN; }
200 : public GraphTraits<clang::CallGraphNode*> {
205 typedef std::pair<const clang::Decl*, clang::CallGraphNode*> PairTy;
206 typedef std::pointer_to_unary_function<PairTy, clang::CallGraphNode&> DerefFun;
216 static clang::CallGraphNode &CGdereference(PairTy P) {
226 public GraphTraits<const clang::CallGraphNode*> {
230 typedef std::pair<const clang::Decl*, clang::CallGraphNode*> PairTy;
231 typedef std::pointer_to_unary_function<PairTy, clang::CallGraphNode&> DerefFun;
242 static clang::CallGraphNode &CGdereference(PairTy P) {