From b8b6f348e0d012017de23873a62d2b5af44dcdc9 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Fri, 16 Dec 2016 13:29:34 +0100 Subject: [PATCH] Debugger: Add dumper for msvc std tree iterator Change-Id: I39a655d04f1c24448c3db65dca5097a9b482b5d9 Reviewed-by: hjk --- share/qtcreator/debugger/stdtypes.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/share/qtcreator/debugger/stdtypes.py b/share/qtcreator/debugger/stdtypes.py index 030697bb5a2..aabc915535a 100644 --- a/share/qtcreator/debugger/stdtypes.py +++ b/share/qtcreator/debugger/stdtypes.py @@ -383,6 +383,27 @@ def qdump__std__set__const_iterator(d, value): def qdump__std____cxx1998__set(d, value): qdump__std__set(d, value) +def qdumpHelper__std__tree__iterator_MSVC(d, value): + d.putNumChild(1) + d.putEmptyValue() + if d.isExpanded(): + with Children(d): + childType = value.type[0][0][0] + (proxy, nextIter, node) = value.split("ppp") + (left, parent, right, color, isnil, pad, child) = \ + d.split("pppcc@{%s}" % (childType.name), node) + if (childType.name.startswith("std::pair")): + d.putPairItem(None, child) + else: + d.putSubItem("value", child) + +def qdump__std___Tree_const_iterator(d, value): + qdumpHelper__std__tree__iterator_MSVC(d, value) + +def qdump__std___Tree_iterator(d, value): + qdumpHelper__std__tree__iterator_MSVC(d, value) + + def qdump__std__set(d, value): if d.isQnxTarget() or d.isMsvcTarget(): qdump__std__set__QNX(d, value)