godot/modules/mono/editor
Raul Santos 5815d1c8c8
Improve handling of generic C# types
- Create CSharpScript for generic C# types.
  - `ScriptPathAttributeGenerator` registers the path for the generic type definition.
  - `ScriptManagerBridge` lookup uses the generic type definition that was registered by the generator.
  - Constructed generic types use a virtual `csharp://` path so they can be registered in the map and loaded as if there was a different file for each constructed type, even though they all share the same real path.
  - This allows getting the base type for a C# type that derives from a generic type.
- Shows base scripts in the _Add Node_ and _Create Resource_ dialogs even when they are generic types.
  - `get_global_class_name` implementation was moved to C# and now always returns the base type even if the script is not a global class (this behavior matches GDScript).
- Create `CSharpScript::TypeInfo` struct to hold all the type information about the C# type that corresponds to the `CSharpScript`, and use it as the parameter in `UpdateScriptClassInfo` to avoid adding more parameters.
2024-02-08 18:31:13 +01:00
..
Godot.NET.Sdk Improve handling of generic C# types 2024-02-08 18:31:13 +01:00
GodotTools Improve handling of generic C# types 2024-02-08 18:31:13 +01:00
script_templates Expose a method to get gravity for any physics body 2024-01-30 23:57:38 -06:00
bindings_generator.cpp Merge pull request #87526 from zaevi/fix_csharp_gc 2024-01-26 11:47:25 +01:00
bindings_generator.h Merge pull request #80527 from raulsntos/dotnet/generate-compat-methods-from-classdb 2023-09-26 13:44:52 +02:00
code_completion.cpp Extract ScriptInstance to simplify includes 2023-09-06 22:54:38 +02:00
code_completion.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
editor_internal_calls.cpp Merge pull request #86676 from rune-scape/sparse-script-reload 2024-01-17 18:52:54 +01:00
editor_internal_calls.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
hostfxr_resolver.cpp C#: Hide hostfxr not found error 2023-09-15 14:12:01 +02:00
hostfxr_resolver.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
semver.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
semver.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00