From 380c65e62de0e60da667dc0d87935171b91b9c6c Mon Sep 17 00:00:00 2001 From: Christian Tismer Date: Sun, 16 Jun 2019 12:05:39 +0200 Subject: Cleanup pointer whitespace everywhere Among other files to fix, basewrapper.(cpp|h) was full of uncommon pointer whitespace. After fixing that, I could not resist and fixed also libshiboken, generators, and after acceptance also PySide. Most of the time, this regex worked fine (\w\w+)([*&]+)[ ]*(?![&*]*[/=]) replaced with \1 \2 but everything was checked by hand. I did not touch the shiboken tests which are quite hairy. It turned out that inserting a space between a variable and asterisk causes a crash of shiboken, if the same line contains "CONVERTTOCPP". This was temporarily fixed by adding another space after it. Example.. sources/pyside2/PySide2/glue/qtcore.cpp line 977 QByteArray * cppSelf = %CONVERTTOCPP[QByteArray *](obj); //XXX /|\ omitting this space crashes shiboken! cppgenerator.cpp was special, since it was modified to _generate_ correct pointer whitespace. This caused a few testcases to fail, which had to be adjusted, again. This was difficult since some internal names must end on "*" and generated code normally not. Removing the last errors involved binary search on path sets... Apply C++ 11 fixits to the changed code, where applicable. Done-with: Friedemann.Kleint@qt.io Task-number: PYSIDE-1037 Change-Id: I4ac070f52c5efb296c05d581c9d46e6f397a6c81 Reviewed-by: Qt CI Bot Reviewed-by: Friedemann Kleint --- sources/shiboken2/libshiboken/basewrapper_p.h | 36 +++++++++++++-------------- 1 file changed, 18 insertions(+), 18 deletions(-) (limited to 'sources/shiboken2/libshiboken/basewrapper_p.h') diff --git a/sources/shiboken2/libshiboken/basewrapper_p.h b/sources/shiboken2/libshiboken/basewrapper_p.h index f8a381078..feba6561e 100644 --- a/sources/shiboken2/libshiboken/basewrapper_p.h +++ b/sources/shiboken2/libshiboken/basewrapper_p.h @@ -61,7 +61,7 @@ namespace Shiboken typedef std::unordered_multimap RefCountMap; /// Linked list of SbkBaseWrapper pointers -typedef std::set ChildrenList; +using ChildrenList = std::set; /// Structure used to store information about object parent and children. struct ParentInfo @@ -69,7 +69,7 @@ struct ParentInfo /// Default ctor. ParentInfo() : parent(0), hasWrapperRef(false) {} /// Pointer to parent object. - SbkObject* parent; + SbkObject *parent; /// List of object children. ChildrenList children; /// has internal ref @@ -88,7 +88,7 @@ extern "C" struct SbkObjectPrivate { /// Pointer to the C++ class. - void** cptr; + void ** cptr; /// True when Python is responsible for freeing the used memory. unsigned int hasOwnership : 1; /// This is true when the C++ class of the wrapped object has a virtual destructor AND was created by Python. @@ -98,9 +98,9 @@ struct SbkObjectPrivate /// Marked as true when the object constructor was called unsigned int cppObjectCreated : 1; /// Information about the object parents and children, may be null. - Shiboken::ParentInfo* parentInfo; + Shiboken::ParentInfo *parentInfo; /// Manage reference count of objects that are referred to but not owned from. - Shiboken::RefCountMap* referredObjects; + Shiboken::RefCountMap *referredObjects; ~SbkObjectPrivate() { @@ -121,8 +121,8 @@ struct SbkObjectPrivate struct SbkObjectTypePrivate { - SbkConverter* converter; - int* mi_offsets; + SbkConverter *converter; + int *mi_offsets; MultipleInheritanceInitFunction mi_init; /// Special cast function, null if this class doesn't have multiple inheritance. @@ -134,16 +134,16 @@ struct SbkObjectTypePrivate int is_multicpp : 1; /// True if this type was defined by the user. int is_user_type : 1; - /// Tells is the type is a value type or an object-type, see BEHAVIOUR_* constants. + /// Tells is the type is a value type or an object-type, see BEHAVIOUR_ *constants. // TODO-CONVERTERS: to be deprecated/removed int type_behaviour : 2; int delete_in_main_thread : 1; /// C++ name - char* original_name; + char *original_name; /// Type user data - void* user_data; + void *user_data; DeleteUserDataFunc d_func; - void (*subtype_init)(SbkObjectType*, PyObject*, PyObject*); + void (*subtype_init)(SbkObjectType *, PyObject *, PyObject *); }; @@ -165,7 +165,7 @@ struct DestructorEntry /** * Utility function used to transform a PyObject that implements sequence protocol into a std::list. **/ -std::vector splitPyObject(PyObject* pyObj); +std::vector splitPyObject(PyObject *pyObj); /** * Visitor class used by walkOnClassHierarchy function. @@ -211,7 +211,7 @@ private: class GetIndexVisitor : public HierarchyVisitor { public: - explicit GetIndexVisitor(PyTypeObject* desiredType) : m_desiredType(desiredType) {} + explicit GetIndexVisitor(PyTypeObject *desiredType) : m_desiredType(desiredType) {} bool visit(SbkObjectType *node) override; @@ -248,21 +248,21 @@ private: */ bool walkThroughClassHierarchy(PyTypeObject *currentType, HierarchyVisitor *visitor); -inline int getTypeIndexOnHierarchy(PyTypeObject* baseType, PyTypeObject* desiredType) +inline int getTypeIndexOnHierarchy(PyTypeObject *baseType, PyTypeObject *desiredType) { GetIndexVisitor visitor(desiredType); walkThroughClassHierarchy(baseType, &visitor); return visitor.index(); } -inline int getNumberOfCppBaseClasses(PyTypeObject* baseType) +inline int getNumberOfCppBaseClasses(PyTypeObject *baseType) { BaseCountVisitor visitor; walkThroughClassHierarchy(baseType, &visitor); return visitor.count(); } -inline std::vector getCppBaseClasses(PyTypeObject* baseType) +inline std::vector getCppBaseClasses(PyTypeObject *baseType) { BaseAccumulatorVisitor visitor; walkThroughClassHierarchy(baseType, &visitor); @@ -275,12 +275,12 @@ namespace Object * Decrements the reference counters of every object referred by self. * \param self the wrapper instance that keeps references to other objects. */ -void clearReferences(SbkObject* self); +void clearReferences(SbkObject *self); /** * Destroy internal data **/ -void deallocData(SbkObject* self, bool doCleanup); +void deallocData(SbkObject *self, bool doCleanup); } // namespace Object -- cgit v1.2.3 From ddfbbd346b522703a5b6f8d274a7f79983e5f319 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Tue, 25 Jun 2019 09:33:27 +0200 Subject: shiboken: Introduce nullptr Apply Fixits by Qt Creator with some amendments. Change-Id: Ie8300ddb834adb8b649324562f2c912a4e8cf4ce Reviewed-by: Christian Tismer --- sources/shiboken2/libshiboken/basewrapper_p.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'sources/shiboken2/libshiboken/basewrapper_p.h') diff --git a/sources/shiboken2/libshiboken/basewrapper_p.h b/sources/shiboken2/libshiboken/basewrapper_p.h index feba6561e..d119c7ec6 100644 --- a/sources/shiboken2/libshiboken/basewrapper_p.h +++ b/sources/shiboken2/libshiboken/basewrapper_p.h @@ -67,7 +67,7 @@ using ChildrenList = std::set; struct ParentInfo { /// Default ctor. - ParentInfo() : parent(0), hasWrapperRef(false) {} + ParentInfo() : parent(nullptr), hasWrapperRef(false) {} /// Pointer to parent object. SbkObject *parent; /// List of object children. @@ -105,9 +105,9 @@ struct SbkObjectPrivate ~SbkObjectPrivate() { delete parentInfo; - parentInfo = 0; + parentInfo = nullptr; delete referredObjects; - referredObjects = 0; + referredObjects = nullptr; } }; -- cgit v1.2.3 From 7be4e64b4bac6e6b5a90eec74b9f2b661c60db3a Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Wed, 29 May 2019 10:45:37 +0200 Subject: shiboken: Replace 'typedef' by 'using' Apply Fixits by Qt Creator with some amendments. Remove iterator types by using auto instead. Change-Id: I8a75323da6ae5cdcc6b67af8be9376408953986b Reviewed-by: Christian Tismer --- sources/shiboken2/libshiboken/basewrapper_p.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'sources/shiboken2/libshiboken/basewrapper_p.h') diff --git a/sources/shiboken2/libshiboken/basewrapper_p.h b/sources/shiboken2/libshiboken/basewrapper_p.h index d119c7ec6..56a647b21 100644 --- a/sources/shiboken2/libshiboken/basewrapper_p.h +++ b/sources/shiboken2/libshiboken/basewrapper_p.h @@ -58,7 +58,7 @@ namespace Shiboken * This mapping associates a method and argument of an wrapper object with the wrapper of * said argument when it needs the binding to help manage its reference count. */ -typedef std::unordered_multimap RefCountMap; +using RefCountMap = std::unordered_multimap ; /// Linked list of SbkBaseWrapper pointers using ChildrenList = std::set; @@ -198,7 +198,7 @@ private: class BaseAccumulatorVisitor : public HierarchyVisitor { public: - typedef std::vector Result; + using Result = std::vector; bool visit(SbkObjectType *node) override; -- cgit v1.2.3