path: root/sources/shiboken2/libshiboken
diff options
authorBoxiang Sun <daetalusun@gmail.com>2018-05-20 11:04:45 +0800
committerBoxiang Sun <daetalusun@gmail.com>2018-06-01 15:09:19 +0000
commitee8e7117c79f6820cb228e0f0da522ce7d3c1dce (patch)
tree13cd0847be4ff45a80e2457b945f86b9bd9b4a20 /sources/shiboken2/libshiboken
parentddbd93680730811a5020b4d429c2e3e11d6823e3 (diff)
Improve the QByteArray implementation
The available constructors for QByteArray are now: bytes, bytearray, and QByteArray, unicode is not accepted anymore. Also the concatenation is now possible between QByteArrays. Even though is not possible to initialize a QByteArray with an unicode, we include the possibility to compare it with one (Compatibility with PyQt). The __repr__ and __str__ are now properly working. There seemed to be a confusion regarding data types between Shiboken, Python2 and Python3 related to bytes, so now the structure is based on the flag SBK_BYTES_NAME, which is define as "bytes" for Python3 and "str" for Python2. Many tests were modified to properly handle string, using the `py3kcompat` module. Task-number: PYSIDE-232 Change-Id: I8b671f367c60a0870c72dcbe5662106b3225037d Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'sources/shiboken2/libshiboken')
2 files changed, 2 insertions, 3 deletions
diff --git a/sources/shiboken2/libshiboken/sbkpython.h b/sources/shiboken2/libshiboken/sbkpython.h
index 5fe364a2..a26c318d 100644
--- a/sources/shiboken2/libshiboken/sbkpython.h
+++ b/sources/shiboken2/libshiboken/sbkpython.h
@@ -76,7 +76,6 @@
#define SbkNumber_Check(X) \
(PyNumber_Check(X) && (!PyInstance_Check(X) || PyObject_HasAttrString(X, "__trunc__")))
#define SBK_NB_BOOL(x) (x).nb_nonzero
- #define SBK_STR_NAME "str"
#define SBK_PyMethod_New(X, Y) PyMethod_New(X, Y, reinterpret_cast<PyObject *>(Py_TYPE(Y)))
#define Py_hash_t long
diff --git a/sources/shiboken2/libshiboken/sbkstring.h b/sources/shiboken2/libshiboken/sbkstring.h
index d437f1c7..a6b5fbee 100644
--- a/sources/shiboken2/libshiboken/sbkstring.h
+++ b/sources/shiboken2/libshiboken/sbkstring.h
@@ -44,9 +44,9 @@
#include "shibokenmacros.h"
- #define SBK_STR_NAME "unicode"
+ #define SBK_BYTES_NAME "bytes"
- #define SBK_STR_NAME "str"
+ #define SBK_BYTES_NAME "str"
namespace Shiboken