summaryrefslogtreecommitdiff
path: root/modules/enet/enet_connection.cpp
diff options
context:
space:
mode:
authorIgnacio Roldán Etcheverry <ignalfonsore@gmail.com>2022-11-29 01:01:36 +0100
committerIgnacio Roldán Etcheverry <ignalfonsore@gmail.com>2022-12-02 14:47:12 +0100
commitf86c6b6ac47ecf3e75c74cb94fd65efa6ea2eb0c (patch)
treeb1443a465787b09f373baf1fdbc4963a18984a54 /modules/enet/enet_connection.cpp
parent3afeb28560c3b10419287538162cded631994ce3 (diff)
C#: Replace most conversions between Variant and System.Object
This commit replaces most usages of `ConvertManagedObjectToVariant` and `ConvertVariantToManagedObjectOfType`, by using the `Godot.Variant` struct instead of `System.Object`. The most notable change is to the `GetGodotPropertyDefaultValues` method that's generated for scripts. The dictionary it returns now stores `Godot.Variant` values. Remaining usages are: - The `DelegateUtils` class, for the serialization of closure display classes during assembly reloading by the editor. These display classes are compiler generated classes to store values captured by a closure. Since it's generated by the compiler, the only way we have to access the fields is through reflection. This leads to using `System.Object`. - Converting parameters when invoking constructors from the engine. This will be replaced with source generators in the future. - Legacy support for old `GetGodotPropertyDefaultValues` return values. We need to keep supporting the old version of this generated method for some time. Otherwise, if loading a project built with the previous version, it could lead to the loss of exported property values. Ideally, we should remove this legacy support before a stable release.
Diffstat (limited to 'modules/enet/enet_connection.cpp')
0 files changed, 0 insertions, 0 deletions