forked from qt-creator/qt-creator
Debugger: Add a dumper of QStaticStringData
Change-Id: I5e4ebc31eaf7cce76b8cfd1a5c9635441eccc797 Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -1280,6 +1280,12 @@ def qdump__QString(d, value):
|
|||||||
if d.isExpanded():
|
if d.isExpanded():
|
||||||
d.putArrayData(data, size, d.createType("QChar"))
|
d.putArrayData(data, size, d.createType("QChar"))
|
||||||
|
|
||||||
|
def qdump__QStaticStringData(d, value):
|
||||||
|
size = value.type.templateArgument(0, numeric=True)
|
||||||
|
(ref, size, alloc, pad, offset, data) = value.split('iii@p%ss' % (2 * size))
|
||||||
|
d.putValue(d.hexencode(data), "utf16")
|
||||||
|
d.putPlainChildren(value)
|
||||||
|
|
||||||
def qdump__QStringData(d, value):
|
def qdump__QStringData(d, value):
|
||||||
d.putStringValueByAddress(value.integer())
|
d.putStringValueByAddress(value.integer())
|
||||||
d.putNumChild(0)
|
d.putNumChild(0)
|
||||||
|
@@ -3112,11 +3112,14 @@ void tst_Dumpers::dumper_data()
|
|||||||
"l.takeFirst();\n"
|
"l.takeFirst();\n"
|
||||||
"l << \" World \";\n\n"
|
"l << \" World \";\n\n"
|
||||||
|
|
||||||
"QString str1(\"Hello Qt\");\n"
|
"QString str1(\"Hello Qt\"); unused(&str1);\n"
|
||||||
"QString str2(\"Hello\\nQt\");\n"
|
"QString str2(\"Hello\\nQt\"); unused(&str2);\n"
|
||||||
"QString str3(\"Hello\\rQt\");\n"
|
"QString str3(\"Hello\\rQt\"); unused(&str3);\n"
|
||||||
"QString str4(\"Hello\\tQt\");\n"
|
"QString str4(\"Hello\\tQt\"); unused(&str4);\n\n"
|
||||||
"unused(&str1, &str2, &str3, &str4);\n")
|
|
||||||
|
"QStaticStringData<1> sd;\n"
|
||||||
|
"sd.data[0] = 'Q';\n"
|
||||||
|
"sd.data[1] = 0;\n")
|
||||||
|
|
||||||
+ CoreProfile()
|
+ CoreProfile()
|
||||||
|
|
||||||
@@ -3142,7 +3145,9 @@ void tst_Dumpers::dumper_data()
|
|||||||
+ Check("str1", "\"Hello Qt\"", "@QString")
|
+ Check("str1", "\"Hello Qt\"", "@QString")
|
||||||
+ Check("str2", "\"Hello\nQt\"", "@QString")
|
+ Check("str2", "\"Hello\nQt\"", "@QString")
|
||||||
+ Check("str3", "\"Hello\rQt\"", "@QString")
|
+ Check("str3", "\"Hello\rQt\"", "@QString")
|
||||||
+ Check("str4", "\"Hello\tQt\"", "@QString");
|
+ Check("str4", "\"Hello\tQt\"", "@QString")
|
||||||
|
|
||||||
|
+ Check("sd", "\"Q\"", "@QStaticStringData<1>");
|
||||||
|
|
||||||
|
|
||||||
QTest::newRow("QStringReference")
|
QTest::newRow("QStringReference")
|
||||||
|
Reference in New Issue
Block a user