5cf0d772bc
Change container_element_type to vector container
2023-12-05 08:51:49 -06:00
d168dada36
Moving 'Expected indented block' error message lines numbers back
2023-11-28 23:09:11 +02:00
39e8cf891d
GDScript: Make annotations register statically in parser
...
So it only register the annotations once per run instead of doing it
every time a script is parsed.
2023-11-28 17:16:21 -03:00
668ba2d1a5
GDScript: Allow empty parentheses for property getter declaration
2023-10-11 09:54:17 +03:00
53c6c387ef
Merge pull request #83050 from k0T0z/fix-unnecessary-include
...
Deleting unnecessary include in GDScriptParser
2023-10-10 12:33:58 +02:00
3e57279be2
removing unnecessary include of gdscript_warning.h as it is already included in the header file
...
Signed-off-by: Saif Kandil <74428638+k0T0z@users.noreply.github.com >
2023-10-09 18:00:44 +03:00
f18aa00e85
Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable
2023-10-08 17:23:33 +02:00
9e2273abc7
GDScript: Add error when exporting node in non [Node]-derived classes
2023-10-05 13:50:26 +03:00
813cd1dfc8
Merge pull request #80085 from vnen/gdscript-pattern-guards
...
GDScript: Implement pattern guards for match statement
2023-09-28 20:03:57 +02:00
aa474c9feb
Merge pull request #75988 from dalexeev/gds-unsafe-call-argument
...
GDScript: Improve call analysis
2023-09-27 19:07:46 +02:00
54a1414500
GDScript: Implement pattern guards for match statement
...
Within a match statement, it is now possible to add guards in each
branch:
var a = 0
match a:
0 when false: print("does not run")
0 when true: print("but this does")
This allows more complex logic for deciding which branch to take.
2023-09-27 11:25:25 -03:00
517e9f8aef
[Modules] Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable
2023-09-26 16:44:52 +02:00
e8696f9961
GDScript: Improve call analysis
...
* Add missing `UNSAFE_CALL_ARGUMENT` warning.
* Fix `Object` constructor.
* Display an error for non-existent static methods.
2023-09-21 13:36:39 +03:00
281439ce20
Merge pull request #81699 from dalexeev/gds-fix-and-improve-doc-comment-parsing
...
GDScript: Fix and improve doc comment parsing
2023-09-20 13:09:32 +02:00
c35cb51d74
GDScript: Fix subscript resolution for constant non-metatypes
2023-09-19 22:26:06 +03:00
072e9c5c82
GDScript: Fix and improve doc comment parsing
2023-09-16 17:31:50 +03:00
13f0ab88f2
Merge pull request #81079 from dalexeev/gds-fix-get-method-list
...
GDScript: Fix `get_*_list()` methods return incorrect info
2023-09-11 15:36:52 +02:00
462d8f4752
GDScript: Fix get_*_list() methods return incorrect info
2023-09-04 00:21:03 +03:00
35802374ac
Add coloring for completion of vector components
2023-08-30 21:13:25 +03:00
91c5273ec5
Merge pull request #75656 from YuriSizov/core-iconic-builtins
...
Add a script method to get its class icon
2023-08-29 12:41:03 +02:00
b6c4efe1b1
Merge pull request #80964 from dalexeev/gds-allow-use-local-consts-as-types
...
GDScript: Allow use local constants as types
2023-08-25 21:26:44 +02:00
68a567bd13
GDScript: Allow use local constants as types
2023-08-25 17:04:04 +03:00
89429b0273
GDScript: Fix lambda resolution with cyclic references
2023-08-25 16:29:11 +03:00
2c77f07aaa
Add a script method to get its class icon
...
Co-authored-by: Danil Alexeev <danil@alexeev.xyz >
2023-08-24 13:05:41 +02:00
6c59ed9485
GDScript: Add static typing for for loop variable
2023-08-17 20:54:34 +03:00
4f00f925b3
Merge pull request #78552 from dalexeev/gds-check-get-node-in-static-func
...
GDScript: Check `get_node()` shorthand in static functions
2023-08-17 11:20:32 +02:00
fa8fec2cc1
Fix superfluous " in error message
2023-08-13 00:38:10 +02:00
0f27c4ad80
GDScript: Check get_node() shorthand in static functions
2023-08-09 17:11:38 +03:00
68a49c4959
Merge pull request #79935 from dalexeev/gds-validate-node-path-annotation
...
GDScript: Add validation for `@export_node_path` annotation arguments
2023-08-01 17:25:44 +02:00
3de7dd902c
Merge pull request #79880 from dalexeev/gds-fix-id-shadowing-below
...
GDScript: Fix bug with identifier shadowed below in current scope
2023-07-31 21:01:36 +02:00
41efc7cb86
Merge pull request #78941 from dalexeev/gds-doc-comments-deprecated-and-experimental
...
GDScript: Add `@deprecated` and `@experimental` doc comment tags
2023-07-31 21:01:08 +02:00
5b4403c9a5
GDScript: Add validation for @export_node_path annotation arguments
...
Co-authored-by: George Marques <george@gmarqu.es >
2023-07-26 20:36:47 +03:00
d53fc92b4c
GDScript: Fix bug with identifier shadowed below in current scope
2023-07-26 11:26:57 +03:00
13c73500ab
Fix for not being able to ignore shadowing warnings on class scope
2023-07-24 17:22:12 -03:00
cbfe2b61b6
GDScript: Properly track extents of constants and patterns
...
Even in the case of errors.
2023-07-12 10:57:11 -03:00
8a06ec979e
Change explicit 'Godot 4.0' references to 'Godot 4'
...
Fixes #79276 .
2023-07-10 13:08:11 +02:00
c1b450566a
GDScript: Add @deprecated and @experimental doc comment tags
2023-07-08 18:13:19 +03:00
faf3faa8c8
Merge pull request #77744 from dalexeev/gds-reset-block-locals-on-exit
...
GDScript: Reset local variables on exit from block
2023-06-21 21:51:05 +02:00
bf04c55175
Fix lambda parsing continuing on subsequent lines #73273
2023-06-21 12:56:57 +02:00
ae00187b58
Merge pull request #77129 from dalexeev/gds-fix-static-var-bugs-part-1
...
GDScript: Fix some bugs with static variables and functions
2023-06-19 21:18:18 +02:00
116f783db7
Merge pull request #76207 from dalexeev/clarify-rpc-docs
...
Clarify `@rpc` annotation arguments docs
2023-06-18 21:34:34 +02:00
fcc39d498b
Merge pull request #75051 from AleryBerry/fix-error-message-lua-style
...
GDScript: Fix error message for LUA-style dictionary
2023-06-18 16:28:36 +02:00
aebbbda080
GDScript: Fix some bugs with static variables and functions
2023-06-16 22:52:11 +03:00
25b2f1780a
Style: Harmonize header includes in modules
...
This applies our existing style guide, and adds a new rule to that style
guide for modular components such as platform ports and modules:
Includes from the platform port or module ("local" includes) should be listed
first in their own block using relative paths, before Godot's "core" includes
which use "absolute" (project folder relative) paths, and finally thirdparty
includes.
Includes in `#ifdef`s come after their relevant section, i.e. the overall
structure is:
- Local includes
* Conditional local includes
- Core includes
* Conditional core includes
- Thirdparty includes
* Conditional thirdparty includes
2023-06-15 14:35:45 +02:00
ddd9aa11b3
Clarify @rpc annotation arguments docs
2023-06-13 21:33:48 +03:00
049a49cac0
GDScript: Fix doc comment parsing (newlines and spaces)
2023-06-05 16:00:46 +03:00
f3bf75fbb4
GDScript: Reset local variables on exit from block
2023-06-02 13:20:19 +03:00
06d337af80
Merge pull request #75943 from adamscott/fix-missing-script-type-nullptr-check
...
Add missing `script_type` `nullptr` check
2023-05-22 13:48:32 +02:00
a6ac305f96
Rework Navigation Avoidance
...
Rework Navigation Avoidance.
2023-05-10 05:01:58 +02:00
0ba6048ad3
Add support for static variables in GDScript
...
Which allows editable data associated with a particular class instead of
the instance. Scripts with static variables are kept in memory
indefinitely unless the `@static_unload` annotation is used or the
`static_unload()` method is called on the GDScript.
If the custom function `_static_init()` exists it will be called when
the class is loaded, after the static variables are set.
2023-04-27 09:51:44 -03:00