diff options
author | Fabian Kosmale <fabian.kosmale@qt.io> | 2022-09-18 15:27:38 +0200 |
---|---|---|
committer | Marc Mutz <marc.mutz@qt.io> | 2023-06-02 22:31:36 +0200 |
commit | 79ae79d05c65019233cf9ae9e77ef59d90e75ac2 (patch) | |
tree | 417e8dcfed1af2c78a9de0daaa8e059afce2590c /src/gui/text/qtextmarkdownwriter_p.h | |
parent | 581c4bcb62a9d3cbb4c33df3f0f7a0a965225e74 (diff) |
QVariant::fromValue: Add rvalue optimization
When passing an rvalue-reference to QVariant, there is no reason to make
a copy if the type is moveable. Moreover, we know that the pointer which
we construct from the object passed to fromValue non-null. We make use
of both facts by parametrizing custom_construct on
non-nullness and availability of a move-ctor, and then dispatching to
the suitable template.
We need to keep the const T& overload, as otherwise code which
explicitly specializes fromValue and passes a const lvalue to it would
stop to compile.
[ChangeLog][QtCore][QVariant] Added fromValue() overload taking rvalues.
Change-Id: I44fb757d516ef364fe7967bc103b3f98278b4919
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/gui/text/qtextmarkdownwriter_p.h')
0 files changed, 0 insertions, 0 deletions