summaryrefslogtreecommitdiffstats
path: root/src/corelib/tools/qflatmap_p.h
Commit message (Collapse)AuthorAgeFilesLines
* Don't allow storing types that throw in the destructor in our containersLars Knoll2020-11-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | Types that throw in their destructors are strongly discouraged in C++, and even the STL doesn't define what happens if such types are stored in their containers. Make this more explicit for Qt and disallow storing those types in our containers. This will hopefully preempty any potential future bug reports about us not handling such a case. It also helps simplify some code in QList and other cases and makes it possible to explicitly mark more methods as noexcept. Some care needs to be taken where to add the static asserts, so that we don't disallow forward declarations of types stored in containers. Place the static assert into the destructor of the container where possible or otherwise into the templated d-pointer. Change-Id: If3aa40888f668d0f1b6c6b3ad4862b169d31280e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
* Use QList instead of QVector in corelibJarek Kobus2020-06-251-6/+4
| | | | | | | | | | Applied to headers only. Source file to be changed separately. Omitted statemachine for now to avoid conflicts. Omitted qmetatype.h for now - to be handled later. Task-number: QTBUG-84469 Change-Id: I317376037a62467c313467d92955ad0b7473aa97 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* QFlatMap: explicitly include <vector>Vitaly Fanaskov2020-03-061-0/+1
| | | | | | | | | Without this include, it fails to compile the following line on some systems: "std::vector<bool> done(s)", because only a forward declaration is available. Change-Id: I6eac4b7f69dda16e181043eb707f970b21b2dfef Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Long live QFlatMap!Joerg Bornemann2020-01-021-0/+982
Add a light-weight associative container, API-wise very similar to QMap, that's based on two sorted continuous containers (QVector by default). The class is internal for now. Change-Id: Ife12576c4abb39a3ea2acb0a1ba0faca91b3a4c5 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>