That could work - could be interesting to experiment with.
Kit
On 28/11/2022 11:43, Stefan Glienke via fpc-devel wrote:
Nevermind - I guess there is:
https://www.freepascal.org/docs-html/rtl/system/gettypekind.html
Am 28.11.2022 um 12:35 schrieb Stefan Glienke via fpc-devel:
In Delphi that would be the
https://docwiki.embarcadero.com/Libraries/Alexandria/en/System.GetTypeKind
intrinsic - I could not find that one in the 3.2.0 feature list.
Am 28.11.2022 um 11:17 schrieb J. Gareth Moreton via fpc-devel:
Well that spoils that idea! Is there any way to determine if it's
pointer-based so you can swap references instead of going through
the whole penalty of creating and destroying temporary objects?
Kit
On 28/11/2022 10:07, Sven Barth wrote:
J. Gareth Moreton via fpc-devel <fpc-devel@lists.freepascal.org>
schrieb am Mo., 28. Nov. 2022, 11:01:
Just want to clarify something... if a type is managed, can it
be safely
typecast to a pointer in all instances and on all platforms? (The
purpose being so if I wanted to swap two items, so there's no
overall
change in the reference counters, I can simply swap the
pointers...
there's no dereferencing involved!)
No, managed does not automatically mean that it's a Pointer based
type. Records with management operators, Variants and Windows
WideString are managed as well.
Regards,
Sven
_______________________________________________
fpc-devel maillist -fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
_______________________________________________
fpc-devel maillist -fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
_______________________________________________
fpc-devel maillist -fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel