qt5base-lts/tests/auto/corelib
Marc Mutz 6ec1dc904d QSettings: port key processing to QAnyStringView
... in preparation for replacing the QString keys in the public API
with QAnyStringView ones.

This removes the "important optimization" that avoids a detach in the
common case where the input is the same as the output of
normalization. But that optimization is beside the point, because it
trades a memory allocation avoided in the library for O(N) allocations
inserted into user code for each call to QSettings::value(), the vast
majority of which are calls with string literals.

With the public interface ported to QAnyStringView in the follow-up
patch, we can then internally optimize memory allocations _in a central
place_ (e.g. by returning std::u16string or QVarLengthArray<QChar> from
normalizeKey() instead of QString). But first we need to get rid of all
the unwarranted allocations in user code.

Change-Id: I45fc83d972c552a220c9c29508001d3f172e1162
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
2022-03-19 07:09:55 +00:00
..
animation tst_qanimationgroup: fix memleaks 2022-01-05 08:22:00 +01:00
global Tests: Do not depend on transitive includes 2022-03-17 17:14:37 +01:00
io QSettings: port key processing to QAnyStringView 2022-03-19 07:09:55 +00:00
itemmodels Fix test to pass with QT_FORCE_ASSERTS 2022-02-18 18:55:38 +01:00
kernel Tests: Do not depend on transitive includes 2022-03-17 17:14:37 +01:00
mimetypes Tests: Do not depend on transitive includes 2022-03-17 17:14:37 +01:00
platform Android: Add runOnMainAndroidThread() under QNativeInterface 2021-05-26 23:24:11 +00:00
plugin Add VERBATIM option to add_custom_command calls 2022-03-17 15:15:06 +01:00
serialization Tests: Do not depend on transitive includes 2022-03-17 17:14:37 +01:00
text Add QByteArray::percentDecoded() as an instance method 2022-03-18 01:22:54 +01:00
thread QMutexLocker: strenghten the locking operations 2022-03-18 05:18:28 +01:00
time Tests: Do not depend on transitive includes 2022-03-17 17:14:37 +01:00
tools Tests: Do not depend on transitive includes 2022-03-17 17:14:37 +01:00
CMakeLists.txt Add tests for QAndroidApplication's sdkVersion and activity 2021-05-13 01:41:36 +03:00