]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
printers.py (StdMapPrinter.__init__): Don't set self.iter.
authorTom Tromey <tromey@redhat.com>
Mon, 15 Jun 2009 20:54:22 +0000 (20:54 +0000)
committerTom Tromey <tromey@gcc.gnu.org>
Mon, 15 Jun 2009 20:54:22 +0000 (20:54 +0000)
* python/libstdcxx/v6/printers.py (StdMapPrinter.__init__): Don't
set self.iter.
(StdMapPrinter.to_string): Make a new iterator.
(StdMapPrinter.children): Likewise.
(StdSetPrinter.__init__): Don't set self.iter.
(StdSetPrinter.to_string): Make a new iterator.
(StdSetPrinter.children): Likewise.

From-SVN: r148506

libstdc++-v3/ChangeLog
libstdc++-v3/python/libstdcxx/v6/printers.py

index 4173c75951e147268965ca6d802b9a39364fdc9c..2ca72ea84fa3a4c7bd381b39ba831c5a7dc12d98 100644 (file)
@@ -1,3 +1,13 @@
+2009-06-15  Tom Tromey  <tromey@redhat.com>
+
+       * python/libstdcxx/v6/printers.py (StdMapPrinter.__init__): Don't
+       set self.iter.
+       (StdMapPrinter.to_string): Make a new iterator.
+       (StdMapPrinter.children): Likewise.
+       (StdSetPrinter.__init__): Don't set self.iter.
+       (StdSetPrinter.to_string): Make a new iterator.
+       (StdSetPrinter.children): Likewise.
+
 2009-06-11  Paolo Carlini  <paolo.carlini@oracle.com>
 
        * include/bits/random.tcc
index 4dddd8f60f9d696874d10fda6956f5c51d0e2bbf..e2bb231e15a80d7acfe6fa71dffd09a48cd48d1e 100644 (file)
@@ -277,17 +277,17 @@ class StdMapPrinter:
     def __init__ (self, typename, val):
         self.typename = typename
         self.val = val
-        self.iter = RbtreeIterator (val)
 
     def to_string (self):
-        return '%s with %d elements' % (self.typename, len (self.iter))
+        return '%s with %d elements' % (self.typename,
+                                        len (RbtreeIterator (self.val)))
 
     def children (self):
         keytype = self.val.type.template_argument(0).const()
         valuetype = self.val.type.template_argument(1)
         nodetype = gdb.lookup_type('std::_Rb_tree_node< std::pair< %s, %s > >' % (keytype, valuetype))
         nodetype = nodetype.pointer()
-        return self._iter (self.iter, nodetype)
+        return self._iter (RbtreeIterator (self.val), nodetype)
 
     def display_hint (self):
         return 'map'
@@ -317,15 +317,15 @@ class StdSetPrinter:
     def __init__ (self, typename, val):
         self.typename = typename
         self.val = val
-        self.iter = RbtreeIterator (val)
 
     def to_string (self):
-        return '%s with %d elements' % (self.typename, len (self.iter))
+        return '%s with %d elements' % (self.typename,
+                                        len (RbtreeIterator (self.val)))
 
     def children (self):
         keytype = self.val.type.template_argument(0)
         nodetype = gdb.lookup_type('std::_Rb_tree_node< %s >' % keytype).pointer()
-        return self._iter (self.iter, nodetype)
+        return self._iter (RbtreeIterator (self.val), nodetype)
 
 class StdBitsetPrinter:
     "Print a std::bitset"