qt6-bb10/src/corelib/tools
Giuseppe D'Angelo 54232d6ea9 Streamline the template specialization of QESDP's dtor
Declaring and implementing out of line a specialization for
QESDP's destructor is needed if we have an implicitly shared
type and we want to provide an inline move constructor for it.

The code is however a bit heavy on the eyes, and the full
implementation for the destructor must be provided (read:
copy and pasted) -- the specialization destructor cannot
just "reuse" the one from the primary template.

This patch adds a few macros to streamline the above, so
that we can start using the same pattern in more places.
These macros are completely private for the moment being;
we don't want to push this solution for our users.

Port QPixmap to the new macros.

Change-Id: Ia6a51ad988483e44c9d97c0eca2fb003b6bd21e3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-10-05 10:16:52 +02:00
..
LICENSE.siphash Replace Qt's hashing function with SipHash 2020-04-09 20:03:52 +02:00
qalgorithms.h Only include <bit> if using post C++17 2020-09-15 11:32:09 +02:00
qalgorithms.qdoc Purge qalgorithm.h of deprecated API 2020-08-28 21:22:32 +02:00
qarraydata.cpp Reserve extra space for '\0' in QArrayData::allocate 2020-08-29 14:20:05 +02:00
qarraydata.h Replace Q_REQUIRED_RESULT with [[nodiscard]] 2020-09-25 07:10:45 +02:00
qarraydataops.h Fix ubsan errors 2020-09-30 00:10:40 +02:00
qarraydatapointer.h Centralize the implementation of move assignment operators 2020-10-03 11:47:17 +02:00
qbitarray.cpp Switch QBitArray to qsizetype 2020-09-29 08:53:00 +02:00
qbitarray.h Centralize the implementation of move assignment operators 2020-10-03 11:47:17 +02:00
qcache.h Switch QCache costs to qsizetype 2020-09-29 08:52:52 +02:00
qcache.qdoc Switch QCache costs to qsizetype 2020-09-29 08:52:52 +02:00
qcommandlineoption.cpp QCommandLineOption: purge deprecated API 2020-07-20 16:06:28 +02:00
qcommandlineoption.h Centralize the implementation of move assignment operators 2020-10-03 11:47:17 +02:00
qcommandlineparser.cpp Use QList instead of QVector in corelib implementation 2020-06-29 12:35:09 +02:00
qcommandlineparser.h
qcontainerfwd.h Fix a bunch of qdoc warnings from QList types 2020-09-21 13:45:58 +02:00
qcontainertools_impl.h Add prepend optimization to QCommonArrayOps 2020-08-27 18:58:20 +02:00
qcontiguouscache.cpp Extend QContiguousCache to use qsizetype for size and indices 2020-03-14 10:36:47 +01:00
qcontiguouscache.h Centralize the implementation of move assignment operators 2020-10-03 11:47:17 +02:00
qcryptographichash.cpp Remove workaround for MSVC 2008 2020-09-30 08:39:28 +02:00
qcryptographichash.h QCryptographicHash: Add BLAKE2b and BLAKE2s hashing algorithms 2020-07-31 15:05:18 +02:00
qduplicatetracker_p.h Replace Q_REQUIRED_RESULT with [[nodiscard]] 2020-09-25 07:10:45 +02:00
qeasingcurve.cpp Deprecate QTimeLine's curveShape in favor of its easingCurve 2020-07-16 17:39:11 +02:00
qeasingcurve.h Centralize the implementation of move assignment operators 2020-10-03 11:47:17 +02:00
qflatmap_p.h Use QList instead of QVector in corelib 2020-06-25 22:30:59 +02:00
qfreelist.cpp
qfreelist_p.h Replace Qt CONSTEXPR defines with constexpr 2020-08-14 15:52:58 +02:00
qhash.cpp Do not use QHash's aeshash() under Clang's sanitizer 2020-10-05 09:33:07 +02:00
qhash.h Centralize the implementation of move assignment operators 2020-10-03 11:47:17 +02:00
qhashfunctions.h Long live QKeyCombination! 2020-09-03 07:00:31 +02:00
qiterator.h Replace Qt CONSTEXPR defines with constexpr 2020-08-14 15:52:58 +02:00
qiterator.qdoc Documentation: purge QSet and QHash members that no longer exist 2020-09-23 16:59:07 +02:00
qline.cpp Deal with {und,ov}erflow issues in QLine's length handling 2020-09-30 16:26:49 +02:00
qline.h Deal with {und,ov}erflow issues in QLine's length handling 2020-09-30 16:26:49 +02:00
qlist.h QList: don't detach on squeeze when holding raw data 2020-09-30 10:11:00 +02:00
qlist.qdoc Update QList's documentation relevant to prepend optimization 2020-09-21 14:42:02 +02:00
qmakearray_p.h Remove QConditional in favor of std::conditional/std::is_unsigned 2018-09-05 14:11:15 +00:00
qmap.h Fix qdoc warnings for QMap/QMultiMap 2020-10-01 12:15:22 +02:00
qmap.qdoc Fix qdoc warnings for QMap/QMultiMap 2020-10-01 12:15:22 +02:00
qmargins.cpp Fix some qdoc warnings: typos and qdoc syntax 2020-09-22 06:01:02 +02:00
qmargins.h Replace Qt CONSTEXPR defines with constexpr 2020-08-14 15:52:58 +02:00
qmessageauthenticationcode.cpp Remove workaround for MSVC 2008 2020-09-30 08:39:28 +02:00
qmessageauthenticationcode.h
qmultimap.qdoc Fix qdoc warnings for QMap/QMultiMap 2020-10-01 12:15:22 +02:00
qoffsetstringarray_p.h Remove unnecessary ; after function implementations 2020-07-06 11:46:39 +02:00
qpair.h Long live std::pair! 2020-06-10 16:49:08 +02:00
qpair.qdoc Long live std::pair! 2020-06-10 16:49:08 +02:00
qpoint.cpp Add qHash implementation for QPoint 2020-09-15 02:46:40 +02:00
qpoint.h Replace Q_REQUIRED_RESULT with [[nodiscard]] 2020-09-25 07:10:45 +02:00
qqueue.cpp doc: Correct remaining qdoc warnings in qqueue.cpp 2018-01-04 12:49:36 +00:00
qqueue.h QQueue: purge deprecated API, swap(i, j) 2020-08-14 09:57:21 +02:00
qrect.cpp Fix various qdoc warnings 2020-09-22 20:55:22 +02:00
qrect.h Replace Q_REQUIRED_RESULT with [[nodiscard]] 2020-09-25 07:10:45 +02:00
qrefcount.cpp
qrefcount.h Get rid of unsharable containers 2019-10-30 16:39:37 +01:00
qringbuffer.cpp Move away from using 0 as a pointer constant 2019-06-07 17:19:16 +02:00
qringbuffer_p.h Centralize the implementation of move assignment operators 2020-10-03 11:47:17 +02:00
qscopedpointer.cpp Doc: replace even more null/0/nullptr with \nullptr macro 2019-05-08 12:48:32 +00:00
qscopedpointer.h Smart pointers: port to explicit operator bool 2020-08-26 02:19:17 +02:00
qscopedpointer_p.h
qscopedvaluerollback.cpp doc: Correct remaining qdoc warnings in qscopedvaluerollback.cpp 2018-01-05 16:03:47 +00:00
qscopedvaluerollback.h Replace Q_REQUIRED_RESULT with [[nodiscard]] 2020-09-25 07:10:45 +02:00
qscopeguard.h Replace Q_REQUIRED_RESULT with [[nodiscard]] 2020-09-25 07:10:45 +02:00
qscopeguard.qdoc Doc: Fix \fn command for qScopeGuard(F &&f) 2020-03-26 15:27:28 +01:00
qset.h Port QSet to qsizetype 2020-08-25 17:59:10 +02:00
qset.qdoc Documentation: purge QSet and QHash members that no longer exist 2020-09-23 16:59:07 +02:00
qshareddata.cpp Q(E)SDP: add get() 2020-06-10 00:08:12 +02:00
qshareddata.h Streamline the template specialization of QESDP's dtor 2020-10-05 10:16:52 +02:00
qshareddata_impl.h Fix -Wshadow warnings 2020-08-04 07:12:32 +02:00
qsharedpointer.cpp Deprecate the static int based API in QMetaType 2020-08-24 00:19:05 +02:00
qsharedpointer.h Merge "Merge remote-tracking branch 'origin/5.13' into dev" into refs/staging/dev 2019-05-07 13:28:29 +00:00
qsharedpointer_impl.h Centralize the implementation of move assignment operators 2020-10-03 11:47:17 +02:00
qsize.cpp Long live QSize(F)::grownBy/shrunkBy() 2019-08-22 11:38:54 +02:00
qsize.h Replace Q_REQUIRED_RESULT with [[nodiscard]] 2020-09-25 07:10:45 +02:00
qstack.cpp Use QList instead of QVector in corelib implementation 2020-06-29 12:35:09 +02:00
qstack.h Use QList instead of QVector in corelib 2020-06-25 22:30:59 +02:00
qt_attribution.json Replace Qt's hashing function with SipHash 2020-04-09 20:03:52 +02:00
qtaggedpointer.h Port Q_STATIC_ASSERT(_X) to static_assert 2020-06-19 19:38:23 +02:00
qtaggedpointer.qdoc QTaggedPointer: some API cleanups 2020-05-15 20:00:24 +02:00
qtimeline.cpp Remove QTimeLine's curveShape 2020-08-28 21:21:09 +02:00
qtimeline.h Remove QTimeLine's curveShape 2020-08-28 21:21:09 +02:00
qtools_p.h Change QByteArray to handle large arrays 2020-08-27 18:58:20 +02:00
qvarlengtharray.h Rename QVarLengthArray's private realloc() to reallocate() 2020-09-19 10:55:52 +02:00
qvarlengtharray.qdoc Use QList instead of QVector in corelib docs 2020-06-29 18:00:13 +02:00
qvector.h Move implementation of QVector/List back to qlist.h 2020-06-20 20:01:33 +02:00
qversionnumber.cpp Use QList instead of QVector in corelib implementation 2020-06-29 12:35:09 +02:00
qversionnumber.h Centralize the implementation of move assignment operators 2020-10-03 11:47:17 +02:00
tools.pri Get rid of the MSVC specific file 2020-09-05 02:12:15 +02:00