From df6001380a809c07a68a9e0da23926b104a8a089 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 16 Mar 2005 22:42:01 +0000 Subject: [PATCH] remove use of compat_iterator git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20642 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Analysis/DataStructure/DSGraph.h | 12 ++++++++---- include/llvm/Analysis/DataStructure/DSGraphTraits.h | 8 +++----- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/include/llvm/Analysis/DataStructure/DSGraph.h b/include/llvm/Analysis/DataStructure/DSGraph.h index 9b04e505b6f..9da47af5fed 100644 --- a/include/llvm/Analysis/DataStructure/DSGraph.h +++ b/include/llvm/Analysis/DataStructure/DSGraph.h @@ -204,9 +204,13 @@ public: /// cause the node to be removed from this list. This means that if you are /// iterating over nodes and doing something that could cause _any_ node to /// merge, your node_iterators into this graph can be invalidated. - typedef NodeListTy::compat_iterator node_iterator; - node_iterator node_begin() const { return Nodes.compat_begin(); } - node_iterator node_end() const { return Nodes.compat_end(); } + typedef NodeListTy::iterator node_iterator; + node_iterator node_begin() { return Nodes.begin(); } + node_iterator node_end() { return Nodes.end(); } + + typedef NodeListTy::const_iterator node_const_iterator; + node_const_iterator node_begin() const { return Nodes.begin(); } + node_const_iterator node_end() const { return Nodes.end(); } /// getFunctionNames - Return a space separated list of the name of the /// functions in this graph (if any) @@ -337,7 +341,7 @@ public: /// void maskNodeTypes(unsigned Mask) { for (node_iterator I = node_begin(), E = node_end(); I != E; ++I) - (*I)->maskNodeTypes(Mask); + I->maskNodeTypes(Mask); } void maskIncompleteMarkers() { maskNodeTypes(~DSNode::Incomplete); } diff --git a/include/llvm/Analysis/DataStructure/DSGraphTraits.h b/include/llvm/Analysis/DataStructure/DSGraphTraits.h index efb31517d12..5f8b8d0ade2 100644 --- a/include/llvm/Analysis/DataStructure/DSGraphTraits.h +++ b/include/llvm/Analysis/DataStructure/DSGraphTraits.h @@ -135,15 +135,13 @@ template <> struct GraphTraits { typedef const DSNode NodeType; typedef DSNode::const_iterator ChildIteratorType; - typedef std::pointer_to_unary_function DerefFun; - // nodes_iterator/begin/end - Allow iteration over all nodes in the graph - typedef mapped_iterator nodes_iterator; + typedef DSGraph::node_const_iterator nodes_iterator; static nodes_iterator nodes_begin(const DSGraph *G) { - return map_iterator(G->node_begin(), DerefFun(dereferenceC)); + return G->node_begin(); } static nodes_iterator nodes_end(const DSGraph *G) { - return map_iterator(G->node_end(), DerefFun(dereferenceC)); + return G->node_end(); } static ChildIteratorType child_begin(const NodeType *N) { return N->begin(); }