diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2018-08-31 10:27:37 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2018-08-31 10:12:06 +0000 |
commit | d0ef246be94375b247ec667d867d6978d513ddeb (patch) | |
tree | 00aa28e4e729e5fd29f5d8da38b59607f4cbe2dc | |
parent | 4af51767cf8514b196ce9be76c6c31111ea5fe3f (diff) |
libpyside: Fix clang-tidy warnings about class definitions
- Add override
- Use = default for trivial constructors/destructors
- Add Q_DISABLE_COPY where applicable
- Use member initialization and remove constructors from simple structs
- Use explicit where applicable (which requires adapting code snippets
constructing a QVariant from PyObjectWrapper)
- Fix some parameter to take a const ref or pass by value
and use std::move in constructors
Change-Id: I5e0d2c4ef92d20397a7daba2f8a64b507e678510
Reviewed-by: Christian Tismer <tismer@stackless.com>
-rw-r--r-- | sources/pyside2/PySide2/QtCore/typesystem_core_common.xml | 6 | ||||
-rw-r--r-- | sources/pyside2/libpyside/destroylistener.h | 2 | ||||
-rw-r--r-- | sources/pyside2/libpyside/dynamicqmetaobject.cpp | 17 | ||||
-rw-r--r-- | sources/pyside2/libpyside/dynamicqmetaobject.h | 3 | ||||
-rw-r--r-- | sources/pyside2/libpyside/globalreceiver.cpp | 1 | ||||
-rw-r--r-- | sources/pyside2/libpyside/globalreceiver.h | 7 | ||||
-rw-r--r-- | sources/pyside2/libpyside/globalreceiverv2.cpp | 7 | ||||
-rw-r--r-- | sources/pyside2/libpyside/globalreceiverv2.h | 6 | ||||
-rw-r--r-- | sources/pyside2/libpyside/pyside.cpp | 7 | ||||
-rw-r--r-- | sources/pyside2/libpyside/pysidesignal.cpp | 15 | ||||
-rw-r--r-- | sources/pyside2/libpyside/signalmanager.h | 7 |
11 files changed, 41 insertions, 37 deletions
diff --git a/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml b/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml index 9e65bff7f..d5a83ada1 100644 --- a/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml +++ b/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml @@ -424,15 +424,15 @@ </add-conversion> <add-conversion type="PyDict" check="PyDict_CheckExact(%in)"> QVariant ret = QVariant_convertToVariantMap(%in); - %out = ret.isValid() ? ret : QVariant::fromValue<PySide::PyObjectWrapper>(%in); + %out = ret.isValid() ? ret : QVariant::fromValue(PySide::PyObjectWrapper(%in)); </add-conversion> <add-conversion type="PyList" check="PyList_Check(%in)"> QVariant ret = QVariant_convertToVariantList(%in); - %out = ret.isValid() ? ret : QVariant::fromValue<PySide::PyObjectWrapper>(%in); + %out = ret.isValid() ? ret : QVariant::fromValue(PySide::PyObjectWrapper(%in)); </add-conversion> <add-conversion type="PyObject"> // Is a shiboken type not known by Qt - %out = QVariant::fromValue<PySide::PyObjectWrapper>(%in); + %out = QVariant::fromValue(PySide::PyObjectWrapper(%in)); </add-conversion> </target-to-native> </conversion-rule> diff --git a/sources/pyside2/libpyside/destroylistener.h b/sources/pyside2/libpyside/destroylistener.h index 0a800451a..d5643f98c 100644 --- a/sources/pyside2/libpyside/destroylistener.h +++ b/sources/pyside2/libpyside/destroylistener.h @@ -63,7 +63,7 @@ class PYSIDE_API DestroyListener : public QObject static DestroyListener* m_instance; DestroyListenerPrivate* m_d; DestroyListener(QObject *parent); - ~DestroyListener(); + ~DestroyListener() override; }; }//namespace diff --git a/sources/pyside2/libpyside/dynamicqmetaobject.cpp b/sources/pyside2/libpyside/dynamicqmetaobject.cpp index 4cc915be7..2d567d99b 100644 --- a/sources/pyside2/libpyside/dynamicqmetaobject.cpp +++ b/sources/pyside2/libpyside/dynamicqmetaobject.cpp @@ -111,16 +111,13 @@ public: QMap<QByteArray, QByteArray> m_info; QByteArray m_className; - bool m_updated; // when the meta data is not update - int m_methodOffset; - int m_propertyOffset; - int m_dataSize; - int m_emptyMethod; - int m_nullIndex; - DynamicQMetaObjectPrivate() - : m_updated(false), m_methodOffset(0), m_propertyOffset(0), - m_dataSize(0), m_emptyMethod(-1), m_nullIndex(0) {} + bool m_updated = false; // when the meta data is not update + int m_methodOffset = 0; + int m_propertyOffset = 0; + int m_dataSize = 0; + int m_emptyMethod = -1; + int m_nullIndex = 0; int createMetaData(QMetaObject* metaObj, QLinkedList<QByteArray> &strings); void updateMetaObject(QMetaObject* metaObj); @@ -527,7 +524,7 @@ void DynamicQMetaObject::addInfo(const char* key, const char* value) m_d->m_info[key] = value; } -void DynamicQMetaObject::addInfo(QMap<QByteArray, QByteArray> info) +void DynamicQMetaObject::addInfo(const QMap<QByteArray, QByteArray> &info) { QMap<QByteArray, QByteArray>::const_iterator i = info.constBegin(); while (i != info.constEnd()) { diff --git a/sources/pyside2/libpyside/dynamicqmetaobject.h b/sources/pyside2/libpyside/dynamicqmetaobject.h index 5ecce50c9..58fe84ffc 100644 --- a/sources/pyside2/libpyside/dynamicqmetaobject.h +++ b/sources/pyside2/libpyside/dynamicqmetaobject.h @@ -50,6 +50,7 @@ namespace PySide class DynamicQMetaObject : public QMetaObject { + Q_DISABLE_COPY(DynamicQMetaObject) public: DynamicQMetaObject(const char* className, const QMetaObject* metaObject); DynamicQMetaObject(PyTypeObject* type, const QMetaObject* metaobject); @@ -62,7 +63,7 @@ public: int addSlot(const char* slot, const char* type = 0); int addProperty(const char* property, PyObject* data); void addInfo(const char* key, const char* value); - void addInfo(QMap<QByteArray, QByteArray> info); + void addInfo(const QMap<QByteArray, QByteArray> &info); void removeSignal(uint idex); void removeSlot(uint index); diff --git a/sources/pyside2/libpyside/globalreceiver.cpp b/sources/pyside2/libpyside/globalreceiver.cpp index ee1f6354a..56e2375b7 100644 --- a/sources/pyside2/libpyside/globalreceiver.cpp +++ b/sources/pyside2/libpyside/globalreceiver.cpp @@ -57,6 +57,7 @@ namespace PySide { class DynamicSlotData { + Q_DISABLE_COPY(DynamicSlotData) public: DynamicSlotData(int id, PyObject* callback, GlobalReceiver* parent); void addRef(const QObject* o); diff --git a/sources/pyside2/libpyside/globalreceiver.h b/sources/pyside2/libpyside/globalreceiver.h index 426d40bfe..8fbe2fe78 100644 --- a/sources/pyside2/libpyside/globalreceiver.h +++ b/sources/pyside2/libpyside/globalreceiver.h @@ -55,9 +55,10 @@ class GlobalReceiver : public QObject { public: GlobalReceiver(); - ~GlobalReceiver(); - int qt_metacall(QMetaObject::Call call, int id, void** args); - const QMetaObject* metaObject() const; + ~GlobalReceiver() override; + + int qt_metacall(QMetaObject::Call call, int id, void** args) override; + const QMetaObject* metaObject() const override; int addSlot(const char* slot, PyObject* callback); void removeSlot(int slotId); void connectNotify(QObject* sender, int slotId); diff --git a/sources/pyside2/libpyside/globalreceiverv2.cpp b/sources/pyside2/libpyside/globalreceiverv2.cpp index 428c12294..5b8785563 100644 --- a/sources/pyside2/libpyside/globalreceiverv2.cpp +++ b/sources/pyside2/libpyside/globalreceiverv2.cpp @@ -62,6 +62,7 @@ namespace PySide { class DynamicSlotDataV2 { + Q_DISABLE_COPY(DynamicSlotDataV2) public: DynamicSlotDataV2(PyObject* callback, GlobalReceiverV2* parent); ~DynamicSlotDataV2(); @@ -189,8 +190,10 @@ DynamicSlotDataV2::~DynamicSlotDataV2() Py_DECREF(m_callback); } -GlobalReceiverV2::GlobalReceiverV2(PyObject *callback, SharedMap map) - : QObject(0), m_metaObject(GLOBAL_RECEIVER_CLASS_NAME, &QObject::staticMetaObject), m_sharedMap(map) +GlobalReceiverV2::GlobalReceiverV2(PyObject *callback, SharedMap map) : + QObject(nullptr), + m_metaObject(GLOBAL_RECEIVER_CLASS_NAME, &QObject::staticMetaObject), + m_sharedMap(std::move(map)) { m_data = new DynamicSlotDataV2(callback, this); m_metaObject.addSlot(RECEIVER_DESTROYED_SLOT_NAME); diff --git a/sources/pyside2/libpyside/globalreceiverv2.h b/sources/pyside2/libpyside/globalreceiverv2.h index ceb325c40..0ec83bc11 100644 --- a/sources/pyside2/libpyside/globalreceiverv2.h +++ b/sources/pyside2/libpyside/globalreceiverv2.h @@ -78,13 +78,13 @@ public: /** * Destructor **/ - ~GlobalReceiverV2(); + ~GlobalReceiverV2() override; /** * Reimplemented function from QObject **/ - int qt_metacall(QMetaObject::Call call, int id, void** args); - const QMetaObject* metaObject() const; + int qt_metacall(QMetaObject::Call call, int id, void** args) override; + const QMetaObject* metaObject() const override; /** * Add a extra slot to this object diff --git a/sources/pyside2/libpyside/pyside.cpp b/sources/pyside2/libpyside/pyside.cpp index 07d93bded..b70743cee 100644 --- a/sources/pyside2/libpyside/pyside.cpp +++ b/sources/pyside2/libpyside/pyside.cpp @@ -187,7 +187,8 @@ void destroyQCoreApplication() } struct TypeUserData { - TypeUserData(PyTypeObject* type, const QMetaObject* metaobject) : mo(type, metaobject) {} + explicit TypeUserData(PyTypeObject* type, const QMetaObject* metaobject, std::size_t size) : + mo(type, metaobject), cppObjSize(size) {} DynamicQMetaObject mo; std::size_t cppObjSize; }; @@ -202,8 +203,8 @@ std::size_t getSizeOfQObject(SbkObjectType* type) void initDynamicMetaObject(SbkObjectType* type, const QMetaObject* base, std::size_t cppObjSize) { //create DynamicMetaObject based on python type - TypeUserData* userData = new TypeUserData(reinterpret_cast<PyTypeObject*>(type), base); - userData->cppObjSize = cppObjSize; + auto userData = + new TypeUserData(reinterpret_cast<PyTypeObject*>(type), base, cppObjSize); userData->mo.update(); Shiboken::ObjectType::setTypeUserData(type, userData, Shiboken::callCppDestructor<TypeUserData>); diff --git a/sources/pyside2/libpyside/pysidesignal.cpp b/sources/pyside2/libpyside/pysidesignal.cpp index 2d135e557..1052bbfb2 100644 --- a/sources/pyside2/libpyside/pysidesignal.cpp +++ b/sources/pyside2/libpyside/pysidesignal.cpp @@ -1,3 +1,5 @@ +#include <utility> + /**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. @@ -54,14 +56,15 @@ namespace Signal { //aux class SignalSignature { public: - SignalSignature() : m_attributes(QMetaMethod::Compatibility) {} - SignalSignature(QByteArray parameterTypes) : m_parameterTypes(parameterTypes), - m_attributes(QMetaMethod::Compatibility) {} - SignalSignature(QByteArray parameterTypes, QMetaMethod::Attributes attributes) : - m_parameterTypes(parameterTypes), + SignalSignature() = default; + explicit SignalSignature(QByteArray parameterTypes) : + m_parameterTypes(std::move(parameterTypes)) {} + explicit SignalSignature(QByteArray parameterTypes, QMetaMethod::Attributes attributes) : + m_parameterTypes(std::move(parameterTypes)), m_attributes(attributes) {} + QByteArray m_parameterTypes; - QMetaMethod::Attributes m_attributes; + QMetaMethod::Attributes m_attributes = QMetaMethod::Compatibility; }; static char* buildSignature(const char*, const char*); diff --git a/sources/pyside2/libpyside/signalmanager.h b/sources/pyside2/libpyside/signalmanager.h index 22aea37c3..c4d57c333 100644 --- a/sources/pyside2/libpyside/signalmanager.h +++ b/sources/pyside2/libpyside/signalmanager.h @@ -54,7 +54,7 @@ class PYSIDE_API PyObjectWrapper { public: PyObjectWrapper(); - PyObjectWrapper(PyObject* me); + explicit PyObjectWrapper(PyObject* me); PyObjectWrapper(const PyObjectWrapper &other); ~PyObjectWrapper(); operator PyObject*() const; @@ -68,6 +68,7 @@ PYSIDE_API QDataStream &operator>>(QDataStream& in, PyObjectWrapper& myObj); class PYSIDE_API SignalManager { + Q_DISABLE_COPY(SignalManager) public: static SignalManager& instance(); @@ -109,10 +110,6 @@ private: SignalManager(); ~SignalManager(); - - // disable copy - SignalManager(const SignalManager&); - SignalManager operator=(const SignalManager&); }; } |