virtualx-engine/modules/gdscript
George Marques 511a4b761c
GDScript: Fix setter being called in chains for shared types
When a type is shared (i.e. passed by reference) it doesn't need to be
called in a setter chain (e.g. `a.b.c = 0`) since it will be updated in
place.

This commit adds an instruction that jumps when the value is shared so
it can be used to skip those cases and avoid redundant calls of setters.
It also solves issues when assigning to sub-properties of read-only
properties.
2022-06-27 12:09:51 -03:00
..
doc_classes Improve description for GDScript built-in range 2022-04-30 15:17:17 -03:00
editor Fix EditorScenePostImport templates for C# 2022-06-16 19:29:59 +02:00
icons Make script type distinguishable by icon 2022-01-13 12:29:05 +01:00
language_server Merge pull request #59482 from kurtlachmann/lsp_better_parentheses 2022-06-15 15:31:35 +02:00
tests Merge pull request #59358 from strank/debug-inner-classes 2022-06-15 10:37:18 -03:00
config.py Unregister GDScriptFunctionState class 2020-11-26 21:39:54 -03:00
gdscript.cpp Make enum/constant binds 64-bit. 2022-06-17 16:36:26 +03:00
gdscript.h Improve stack overflow error message in GDScript and VisualScript 2022-06-15 16:20:01 +02:00
gdscript_analyzer.cpp Make enum/constant binds 64-bit. 2022-06-17 16:36:26 +03:00
gdscript_analyzer.h Add a new HashSet template 2022-05-20 22:40:38 +02:00
gdscript_byte_codegen.cpp GDScript: Fix setter being called in chains for shared types 2022-06-27 12:09:51 -03:00
gdscript_byte_codegen.h GDScript: Fix setter being called in chains for shared types 2022-06-27 12:09:51 -03:00
gdscript_cache.cpp Add a new HashSet template 2022-05-20 22:40:38 +02:00
gdscript_cache.h Add a new HashSet template 2022-05-20 22:40:38 +02:00
gdscript_codegen.h GDScript: Fix setter being called in chains for shared types 2022-06-27 12:09:51 -03:00
gdscript_compiler.cpp GDScript: Fix setter being called in chains for shared types 2022-06-27 12:09:51 -03:00
gdscript_compiler.h Add a new HashSet template 2022-05-20 22:40:38 +02:00
gdscript_disassembler.cpp GDScript: Fix setter being called in chains for shared types 2022-06-27 12:09:51 -03:00
gdscript_editor.cpp Allow autocompletion of "noslider" in export_range 2022-06-19 17:11:49 +02:00
gdscript_function.cpp GDScript: Fix stack overflow when using multiple await 2022-05-27 09:31:37 -03:00
gdscript_function.h GDScript: Fix setter being called in chains for shared types 2022-06-27 12:09:51 -03:00
gdscript_lambda_callable.cpp Clean up Hash Functions 2022-06-20 12:54:19 +02:00
gdscript_lambda_callable.h GDScript: Allow using self in lambdas 2022-04-24 21:49:02 -03:00
gdscript_parser.cpp Implement varargs in Methodinfo 2022-06-23 14:50:38 +02:00
gdscript_parser.h GDScript: Support % in shorthand for get_node 2022-05-27 13:46:18 -03:00
gdscript_rpc_callable.cpp Clean up Hash Functions 2022-06-20 12:54:19 +02:00
gdscript_rpc_callable.h [Net] Add type check to GDScriptRPCCallable. 2022-02-07 13:39:45 +01:00
gdscript_tokenizer.cpp Implement exponential operator (**) to GDScript/Expressions 2022-05-11 16:30:37 +03:00
gdscript_tokenizer.h Add a new HashSet template 2022-05-20 22:40:38 +02:00
gdscript_utility_functions.cpp Style: Partially apply clang-tidy's cppcoreguidelines-pro-type-member-init 2022-05-02 16:28:25 +02:00
gdscript_utility_functions.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
gdscript_vm.cpp GDScript: Fix setter being called in chains for shared types 2022-06-27 12:09:51 -03:00
gdscript_warning.cpp Add enum values (Ignore, Warn, Error) to GDScript warnings 2022-04-06 10:57:33 -05:00
gdscript_warning.h Add enum values (Ignore, Warn, Error) to GDScript warnings 2022-04-06 10:57:33 -05:00
register_types.cpp Add a new HashSet template 2022-05-20 22:40:38 +02:00
register_types.h Refactor module initialization 2022-05-04 17:34:51 +02:00
SCsub Refactor GDScript/C# script templates logic to be editor-only 2022-03-28 16:21:00 +02:00