[Development] QMetaType support for QFuture
Arno Rehn
a.rehn at menlosystems.com
Mon May 10 13:14:20 CEST 2021
Am 10.05.2021 um 10:04 schrieb Fabian Kosmale:
> Regarding the API: I think the most common pattern in Qt would be to
> add a static get method to the private class.
>
> @Arno: But would that accessor actually be enough for you? As in, do
> you know in your case that the QVariant contains a QFuture? If you
> get a generic QVariant instead, you may still need a way to detect
> that the contained type is in fact a QFuture (though QMetaType::name
> might be enough in that case).
Yep, I was thinking of just checking QMetaType::name().
Still, getting this right without relying on UB will be more work than I
expected.
Suppose the QVariant contains a QFuture<int>. How would I generically
extract the QFuture<T> to then call QFuturePrivate::get() on it?
One way to possibly be to convert this unconditionally to a
QFuture<void>, but then QVariant needs to generically know about QFuture
conversion operators/constructors. All doable, but this is going to be
my first "deep dive" into QtCore internals :-)
Regards,
Arno
--
Arno Rehn
Tel +49 89 189 166 0
Fax +49 89 189 166 111
a.rehn at menlosystems.com
www.menlosystems.com
Menlo Systems GmbH
Bunsenstrasse 5, D-82152 Martinsried, Germany
Amtsgericht München HRB 138145
Geschäftsführung: Dr. Michael Mei, Dr. Ronald Holzwarth
USt.-IdNr. DE217772017, St.-Nr. 14316170324
More information about the Development
mailing list