- pretty_printers_dict[re.compile('^std::_List_iterator<.*>$')] = lambda val: StdListIteratorPrinter("std::_List_iterator",val)
- pretty_printers_dict[re.compile('^std::_List_const_iterator<.*>$')] = lambda val: StdListIteratorPrinter("std::_List_const_iterator",val)
- pretty_printers_dict[re.compile('^std::_Rb_tree_iterator<.*>$')] = lambda val: StdRbtreeIteratorPrinter(val)
- pretty_printers_dict[re.compile('^std::_Rb_tree_const_iterator<.*>$')] = lambda val: StdRbtreeIteratorPrinter(val)
- pretty_printers_dict[re.compile('^std::_Deque_iterator<.*>$')] = lambda val: StdDequeIteratorPrinter(val)
- pretty_printers_dict[re.compile('^std::_Deque_const_iterator<.*>$')] = lambda val: StdDequeIteratorPrinter(val)
- pretty_printers_dict[re.compile('^__gnu_cxx::__normal_iterator<.*>$')] = lambda val: StdVectorIteratorPrinter(val)
- pretty_printers_dict[re.compile('^__gnu_cxx::_Slist_iterator<.*>$')] = lambda val: StdSlistIteratorPrinter(val)
-
- # Debug (compiled with -D_GLIBCXX_DEBUG) printer registrations.
- # The Rb_tree debug iterator when unwrapped from the encapsulating __gnu_debug::_Safe_iterator
- # does not have the __norm namespace. Just use the existing printer registration for that.
- pretty_printers_dict[re.compile('^__gnu_debug::_Safe_iterator<.*>$')] = lambda val: StdDebugIteratorPrinter(val)
- pretty_printers_dict[re.compile('^std::__norm::_List_iterator<.*>$')] = lambda val: StdListIteratorPrinter ("std::__norm::_List_iterator",val)
- pretty_printers_dict[re.compile('^std::__norm::_List_const_iterator<.*>$')] = lambda val: StdListIteratorPrinter ("std::__norm::_List_const_iterator",val)
- pretty_printers_dict[re.compile('^std::__norm::_Deque_const_iterator<.*>$')] = lambda val: StdDequeIteratorPrinter(val)
- pretty_printers_dict[re.compile('^std::__norm::_Deque_iterator<.*>$')] = lambda val: StdDequeIteratorPrinter(val)
-
-pretty_printers_dict = {}
+ libstdcxx_printer.add('std::_List_iterator', StdListIteratorPrinter)
+ libstdcxx_printer.add('std::_List_const_iterator',
+ StdListIteratorPrinter)
+ libstdcxx_printer.add('std::_Rb_tree_iterator',
+ StdRbtreeIteratorPrinter)
+ libstdcxx_printer.add('std::_Rb_tree_const_iterator',
+ StdRbtreeIteratorPrinter)
+ libstdcxx_printer.add('std::_Deque_iterator', StdDequeIteratorPrinter)
+ libstdcxx_printer.add('std::_Deque_const_iterator',
+ StdDequeIteratorPrinter)
+ libstdcxx_printer.add('__gnu_cxx::__normal_iterator',
+ StdVectorIteratorPrinter)
+ libstdcxx_printer.add('__gnu_cxx::_Slist_iterator',
+ StdSlistIteratorPrinter)
+
+ # Debug (compiled with -D_GLIBCXX_DEBUG) printer
+ # registrations. The Rb_tree debug iterator when unwrapped
+ # from the encapsulating __gnu_debug::_Safe_iterator does not
+ # have the __norm namespace. Just use the existing printer
+ # registration for that.
+ libstdcxx_printer.add('__gnu_debug::_Safe_iterator',
+ StdDebugIteratorPrinter)
+ libstdcxx_printer.add('std::__norm::_List_iterator',
+ StdListIteratorPrinter)
+ libstdcxx_printer.add('std::__norm::_List_const_iterator',
+ StdListIteratorPrinter)
+ libstdcxx_printer.add('std::__norm::_Deque_const_iterator',
+ StdDequeIteratorPrinter)
+ libstdcxx_printer.add('std::__norm::_Deque_iterator',
+ StdDequeIteratorPrinter)