printers.py (StdMapPrinter.__init__): Don't set self.iter.

* 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
This commit is contained in:
Tom Tromey 2009-06-15 20:54:22 +00:00 committed by Tom Tromey
parent 98a129b9c4
commit ee47095bb4
2 changed files with 16 additions and 6 deletions

View 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

View 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"