remove use of compat_iterator
authorChris Lattner <sabre@nondot.org>
Wed, 16 Mar 2005 22:42:01 +0000 (22:42 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 16 Mar 2005 22:42:01 +0000 (22:42 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20642 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Analysis/DataStructure/DSGraph.h
include/llvm/Analysis/DataStructure/DSGraphTraits.h

index 9b04e505b6f62cef6fd13bd380c24672c545d561..9da47af5fed570caa610529808946a1f9739fb0a 100644 (file)
@@ -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); }
 
index efb31517d123111d65dfca3da79ca030290c9ced..5f8b8d0ade24ced59cbfda6ed1374498d4e4584c 100644 (file)
@@ -135,15 +135,13 @@ template <> struct GraphTraits<const DSGraph*> {
   typedef const DSNode NodeType;
   typedef DSNode::const_iterator ChildIteratorType;
 
-  typedef std::pointer_to_unary_function<const DSNode *,const DSNode&> DerefFun;
-
   // nodes_iterator/begin/end - Allow iteration over all nodes in the graph
-  typedef mapped_iterator<DSGraph::node_iterator, DerefFun> 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(); }