George Marques
577a17980d
Move GDSript annotation application after type-checking
...
This ensures that annotations that rely on the datatype (such as
@export) can validated it timely, allowing compound expressions instead
of only literal values.
2021-03-30 08:29:36 -03:00
George Marques
85e316a5d5
Add typed arrays to GDScript
...
- Use `Array[type]` for type-hints. e.g.:
`var array: Array[int] = [1, 2, 3]`
- Array literals are typed if their storage is typed (variable
asssignment of as argument in function all). Otherwise they are
untyped.
2021-03-29 10:45:48 -03:00
Anshul7sp1
91181c2086
Fixes small typos and grammar correction
2021-03-12 19:05:16 +05:30
Gilles Roudière
ba1344408f
Implement Navigation layers
2021-03-10 11:23:06 +01:00
George Marques
16e88f99e2
Merge pull request #42029 from ThakeeNathees/export-type-infer-bug-fix
...
GDScript export array/dictionary type infer bug fix
2021-03-02 12:14:57 -03:00
Rémi Verschelde
75bfb016f2
Merge pull request #41897 from strank/not-in-conditional-done
...
Add a "not in" operator to GDScript.
2021-03-02 15:16:52 +01:00
Rémi Verschelde
8363c44265
Merge pull request #44719 from ThakeeNathees/assert-argument-bug-fixed
...
GDScript assert message parsing bug fixed
2021-01-11 13:51:44 +01:00
Rémi Verschelde
bcfb698fb4
Merge pull request #44818 from ThakeeNathees/const-crash-fix
...
GDScript crash at incomplete const bug fix
2021-01-11 13:51:18 +01:00
Rémi Verschelde
0dba21a4d1
Merge pull request #45076 from ThakeeNathees/gdscript-operator-precedence-bug-fix
...
GDScript operator `+` `-` precedence bug fix
2021-01-11 13:50:00 +01:00
Thakee Nathees
0889f14af9
GDScript operator `+` `-` precedence bug fix
...
Fix : #43265
2021-01-10 18:33:05 +05:30
Rémi Verschelde
b5334d14f7
Update copyright statements to 2021
...
Happy new year to the wonderful Godot community!
2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.
We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)
Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
Thakee Nathees
18f30dda63
GDScript crash at incomplete const bug fix
2020-12-30 23:27:46 +05:30
Marcel Admiraal
5b937d493f
Rename empty() to is_empty()
2020-12-28 10:39:56 +00:00
Thakee Nathees
ebade0e454
GDScript assert message parsing bug fixed
...
Fix : #43540
2020-12-27 13:13:50 +05:30
Rémi Verschelde
abfc528439
Merge pull request #43890 from vnen/gdscript-builtin-functions-refactor
...
GDScript: Refactor builtin functions
2020-12-15 20:51:38 +01:00
Thakee Nathees
42bfa16996
Refactor DocData into core and editor (DocTools) parts
2020-12-02 00:48:39 +05:30
Thakee Nathees
d0e7d9b62f
Documentation generation for GDScript
...
- ClassDoc added to GDScript and property reflection data were extracted
from parse tree
- GDScript comments are collected from tokenizer for documentation and
applied to the ClassDoc by the GDScript compiler
- private docs were excluded (name with underscore prefix and doesn't
have any doc comments)
- default values (of non exported vars), arguments are extraced from the
parser
- Integrated with GDScript 2.0 and new enums were added.
- merge conflicts fixed
2020-11-29 19:45:36 +05:30
Rémi Verschelde
d395f70828
Merge pull request #43500 from AndreaCatania/gds_fixes
...
Fixes crash when parse_expression returns nullptr.
2020-11-27 16:37:45 +01:00
George Marques
cf7a6be1db
Merge pull request #43226 from mateosss/unreachable-prop-crash
...
Fix crash due to unreachable code in properties
2020-11-27 11:03:20 -03:00
George Marques
c7b6a7adcc
GDScript: Refactor builtin functions
...
They are now called "utility functions" to avoid confusion with methods
of builtin types, and be consistent with the naming in Variant.
Core utility functions are now available in GDScript. The ones missing
in core are added specifically to GDScript as helpers for convenience.
Some functions were remove when there are better ways to do, reducing
redundancy and cleaning up the global scope.
2020-11-26 12:05:42 -03:00
Andrea Catania
98daa0af6b
Fixes crash when returns .
2020-11-13 15:09:52 +01:00
Gustav
0ddd4097a6
Fix completion for built-in load function
2020-11-10 12:00:08 +01:00
Rémi Verschelde
9d2e8f2f27
Variant: Rename Type::_RID to Type::RID
...
The underscore prefix was used to avoid the conflict between the `RID` class
name and the matching enum value in `Variant::Type`.
This can be fixed differently by prefixing uses of the `RID` class in `Variant`
with the scope resolution operator, as done already for `AABB`.
2020-11-09 16:29:04 +01:00
reduz
221a2a1742
Refactored variant constructor logic
2020-11-09 08:54:43 -03:00
reduz
127458ed17
Reorganized core/ directory, it was too fatty already
...
-Removed FuncRef, since Callable makes it obsolete
-Removed int_types.h as its obsolete in c++11+
-Changed color names code
2020-11-07 20:17:12 -03:00
Mateo de Mayo
531958b2f0
Fix crash due to unreachable code in properties
2020-10-30 22:21:50 -03:00
strank
409af31b55
Add a "not in" operator to GDScript.
2020-09-21 17:53:54 -04:00
Rémi Verschelde
3e78963bb9
Fix typos with codespell
...
Using codespell 1.17.1.
Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF
$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2020-09-18 13:44:25 +02:00
Thakee Nathees
e4d5393ecf
GDScript export array/dictionary type infer bug fix
...
Fix : #41980
2020-09-13 19:36:20 +05:30
bruvzg
80b8eff6aa
[Complex Test Layouts] Change `String` to use UTF-32 encoding on all platforms.
2020-09-03 19:56:24 +03:00
George Marques
745ca3059d
Change GDScript compiler to use codegen abstraction
2020-09-01 14:36:22 -03:00
George Marques
edb4caf24e
GDScript: Allow "extends" to be used inside inner class
2020-09-01 09:26:27 -03:00
George Marques
34dc689ad4
GDScript: Allow "self" to be used in class level
2020-09-01 09:26:27 -03:00
George Marques
5033d5c71c
GDScript: Fix crash when parsing properties
2020-08-26 16:08:19 -03:00
George Marques
8ccf88a206
GDScript: Fix issues when deriving from other scripts
2020-08-26 14:50:27 -03:00
George Marques
846856728b
GDScript: Show error when function return type is missing
2020-08-19 14:09:45 -03:00
George Marques
15b16ec0ce
GDScript: Fix signal parameters not respecting commas
2020-08-19 11:32:48 -03:00
George Marques
cd3f51c67c
GDScript: Check duplicate keys in dictionaries and enums
2020-08-19 11:14:16 -03:00
George Marques
f9ad0b30fa
GDScript: Allow preload() to be used with constant expressions
2020-08-19 10:45:00 -03:00
George Marques
a52e457ada
GDScript: Allow keywords to be used in $ notation
2020-08-19 10:19:05 -03:00
George Marques
35176247af
GDScript: Allow enum values to be set to constant expressions
...
Also allow them to access previous values wihout referencing the enum.
2020-08-18 17:44:20 -03:00
George Marques
0f9923e67f
GDScript: Allow empty files to be valid scripts
2020-08-17 21:32:49 -03:00
George Marques
3abb3c0d6e
GDScript: Fix crash when superclass file is non-existent
...
Incidentally, allow EOF to be an end of statement.
2020-08-17 21:30:39 -03:00
George Marques
d06ce2f11e
GDScript: Fix editor crash when writing @tool annotation
2020-08-17 21:02:49 -03:00
George Marques
9413446b2d
Merge pull request #41104 from vnen/gdscript-assignment-tidy
...
Tidy up assignment operator check
2020-08-12 08:54:48 -03:00
Rémi Verschelde
cf05486d8e
Merge pull request #41055 from snichols/null-callee-fix
...
Fix crash with null callee
2020-08-11 15:15:43 +02:00
George Marques
3aef60591b
GDScript: Tidy up assignment operator check
...
The operator is already gathered by the parser, no need to do it again
in the analyzer.
2020-08-08 10:37:51 -03:00
Stephen Nichols
fbd07bf3bf
Adding error message for empty grouping expression
2020-08-05 14:42:33 -05:00
Stephen Nichols
8a13be50ab
Fixing null callee crash.
2020-08-05 14:41:46 -05:00
bruvzg
ee973f5b90
[GDScript] Add static HashMap cleanup.
2020-08-01 22:08:12 +03:00