aboutsummaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorhjk <hjk121@nokiamail.com>2014-04-09 18:29:33 +0200
committerhjk <hjk121@nokiamail.com>2014-04-10 12:19:24 +0200
commit4b4181a9cd77813f6cb2b4027332dd5747a9ad4a (patch)
tree7b50ced0c9dbe5bb39ef6b05a6462b3ae5cef0da /share
parent13a4f739ef7766eeb28a6f7174e2311c8dba8cf6 (diff)
Debugger: Handling eigen3 in manual test
Change-Id: Id3e6eddffe8d0edd7d5947c2eec03d707bd2436b Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Diffstat (limited to 'share')
-rw-r--r--share/qtcreator/debugger/misctypes.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/share/qtcreator/debugger/misctypes.py b/share/qtcreator/debugger/misctypes.py
index f29487184f..808ce34d89 100644
--- a/share/qtcreator/debugger/misctypes.py
+++ b/share/qtcreator/debugger/misctypes.py
@@ -119,14 +119,20 @@ def qdump____m256i(d, value):
# return "Transposed"
def qdump__Eigen__Matrix(d, value):
- innerType = d.templateArgument(value.type, 0)
- storage = value["m_storage"]
- options = d.numericTemplateArgument(value.type, 3)
+ listType = d.directBaseClass(value.type)
+ d.putItem(value.cast(listType))
+ d.putBetterType(value.type)
+
+def qdump__Eigen__PlainObjectBase(d, value):
+ matrixType = d.templateArgument(value.type, 0)
+ innerType = d.templateArgument(matrixType, 0)
+ options = d.numericTemplateArgument(matrixType, 3)
rowMajor = (int(options) & 0x1)
- argRow = d.numericTemplateArgument(value.type, 1)
- argCol = d.numericTemplateArgument(value.type, 2)
- nrows = value["m_storage"]["m_rows"] if argRow == -1 else int(argRow)
- ncols = value["m_storage"]["m_cols"] if argCol == -1 else int(argCol)
+ argRow = d.numericTemplateArgument(matrixType, 1)
+ argCol = d.numericTemplateArgument(matrixType, 2)
+ storage = value["m_storage"]
+ nrows = toInteger(storage["m_rows"] if argRow == -1 else argRow)
+ ncols = toInteger(storage["m_cols"] if argCol == -1 else argCol)
p = storage["m_data"]
if d.isStructType(p.type): # Static
p = p["array"].cast(innerType.pointer())