diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2020-09-02 10:52:18 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2020-09-30 08:21:03 +0000 |
commit | 0f922f604297a2022527f04a696da121396ddc0a (patch) | |
tree | 5a40599046ff6ab940aff6d639530237ce08c4d8 /sources/pyside2/PySide2/QtCore/typesystem_core_common.xml | |
parent | 7af97fa4136d66bbad6c7907de6e7bd823de2e43 (diff) |
Add QStringView/QByteArrayView
View types as function parameters cannot be converted in the standard
way shiboken does it:
QStringView cppArg0;
pythonToCpp(pyArg, &cppArg0);
since they reference some other data.
Introduce a new "viewOn" member to type system entry for them. It
causes the function arguments to be replaced by their viewed-on types
(stringview->string) via metatype.
Add a test in libsample and a test for QUuid::fromString(QStringView).
Test returning QStringView via QRegularExpressionMatch::capturedView().
Task-number: QTBUG-84319
Task-number: PYSIDE-1339
Task-number: PYSIDE-904
Task-number: PYSIDE-487
Change-Id: Iddb4ea268a54928d290e29012e2738772fae83f0
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Diffstat (limited to 'sources/pyside2/PySide2/QtCore/typesystem_core_common.xml')
-rw-r--r-- | sources/pyside2/PySide2/QtCore/typesystem_core_common.xml | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml b/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml index 2cbfe638b..46e3c6fe6 100644 --- a/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml +++ b/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml @@ -253,6 +253,13 @@ </conversion-rule> </primitive-type> + <primitive-type name="QStringView" target-lang-api-name="PyUnicode" view-on="QString"> + <include file-name="QStringView" location="global"/> + <conversion-rule> + <native-to-target file="../glue/qtcore.cpp" snippet="return-pyunicode"/> + </conversion-rule> + </primitive-type> + <primitive-type name="QChar"> <conversion-rule> <native-to-target file="../glue/qtcore.cpp" snippet="return-pyunicode-qchar"/> @@ -2022,6 +2029,12 @@ <inject-code class="target" position="beginning" file="../glue/qtcore.cpp" snippet="qbytearray-msetitem"/> </add-function> </value-type> + <primitive-type name="QByteArrayView" view-on="QByteArray" since="6.0"> + <conversion-rule> + <native-to-target file="../glue/qtcore.cpp" snippet="return-pybytes"/> + </conversion-rule> + </primitive-type> + <value-type name="QTextBoundaryFinder"> <enum-type name="BoundaryReason" flags="BoundaryReasons"/> <enum-type name="BoundaryType"/> |