summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/gdscript_parser.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Add custom icons to script classes.Will Nations2018-08-141-0/+26
|
* Remove usage console spamChaosus2018-08-131-1/+0
|
* Added system for GDScript warningsGeorge Marques2018-08-101-32/+397
| | | | | | | - Count and panel per script. - Ability to disable warnings per script using special comments. - Ability to disable warnings globally using Project Settings. - Option to treat enabled warnings as errors.
* Allow some non-integer built-in constants in gdscriptBernhard Liebl2018-07-311-2/+2
|
* GDScript: Fix parse error in string formattingGeorge Marques2018-07-261-1/+1
|
* GDScript: Add type inference syntax for function argumentsGeorge Marques2018-07-251-11/+19
|
* GDScript: Fix type detection for String formatting operatorGeorge Marques2018-07-251-0/+3
|
* GDScript: Allow accessing constants of outer classesGeorge Marques2018-07-251-0/+3
|
* GDScript: Fix bogus error when a cursor token is found on classGeorge Marques2018-07-251-0/+3
|
* GDScript: Fix mismatching between export hint and type hintGeorge Marques2018-07-251-0/+2
|
* GDScript: Allow inherited method to add optional argumentsGeorge Marques2018-07-251-3/+30
| | | | Also show the parent method signature in the error message.
* GDScript: Look up local scope first for detecting typeGeorge Marques2018-07-251-22/+20
|
* Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam2018-07-261-16/+16
| | | | | | | | | | | | | | | | | | | | | | | This commit makes operator[] on Vector const and adds a write proxy to it. From now on writes to Vectors need to happen through the .write proxy. So for instance: Vector<int> vec; vec.push_back(10); std::cout << vec[0] << std::endl; vec.write[0] = 20; Failing to use the .write proxy will cause a compilation error. In addition COWable datatypes can now embed a CowData pointer to their data. This means that String, CharString, and VMap no longer use or derive from Vector. _ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug builds. This is a lot faster for Vector in the editor and while running tests. The reason why this difference used to exist is because force-inlined methods used to give a bad debugging experience. After extensive testing with modern compilers this is no longer the case.
* Rewrite code completionGeorge Marques2018-07-201-17/+22
| | | | | | - Use data type struct from the parser. - Avail from type hints when type can't be guessed. - Consider inner classes and other scripts when looking for candidates.
* Add ability to infer variable type from assigned valueGeorge Marques2018-07-201-3/+46
| | | | | Syntax: var x : = 42 Infers the type of "x" to be an integer.
* Add editor highlight for type-safe linesGeorge Marques2018-07-201-99/+175
| | | | | The line number is hightlighted to indicate that the line contains only type-safe code.
* Fix line number detection in some parser nodesGeorge Marques2018-07-201-4/+14
|
* Use type information to enable GDScript introspectionGeorge Marques2018-07-201-0/+50
| | | | | This makes the Script API provide accurate information when requesting property or method info.
* Add static type checks in the parserGeorge Marques2018-07-201-203/+2800
| | | | | | | | | | | | - Resolve types for all identifiers. - Error when identifier is not found. - Match return type and error when not returning a value when it should. - Check unreachable code (code after sure return). - Match argument count and types for function calls. - Determine if return type of function call matches the assignment. - Do static type check with match statement when possible. - Use type hints to determine export type. - Check compatibility between type hint and explicit export type.
* Store type hint of declared identifiersGeorge Marques2018-07-201-16/+33
|
* Move inheritance resolution to the parserGeorge Marques2018-07-201-4/+237
|
* Add typing syntaxGeorge Marques2018-07-201-2/+87
|
* Global class names (and GDScript support for it)Juan Linietsky2018-07-151-0/+27
|
* Add proper type information to array propertyBojidar Marinov2018-06-181-1/+1
| | | | Part of #19158
* New sync keywords in GDScript, NativeScript, MonoFabio Alessandrelli2018-05-291-2/+33
|
* Refactor RPCMode enum and checksFabio Alessandrelli2018-05-291-7/+7
|
* Revert "RPCMode refactor, more sync modes"Max Hilbrunner2018-05-291-40/+9
|
* Merge pull request #19021 from Faless/rpc_sync_fixMax Hilbrunner2018-05-291-9/+40
|\ | | | | RPCMode refactor, more sync modes
| * New sync keywords in GDScript, NativeScript, MonoFabio Alessandrelli2018-05-261-2/+33
| |
| * Refactor RPCMode enum and checksFabio Alessandrelli2018-05-261-7/+7
| |
* | Enable singletons to be recognized as constant expressionsGeorge Marques2018-05-281-0/+8
|/ | | | Fix #14681
* Merge pull request #16418 from bojidar-bg/15961-gdscript-array-exportRémi Verschelde2018-05-031-30/+28
|\ | | | | Allow exporting arrays of resources in GDScript
| * Allow exporting arrays of resources in GDScriptBojidar Marinov2018-02-051-30/+28
| | | | | | | | Fixes #15961
* | Change ".." punctuation for "..." in editor strings (#16507)Hugo Locurcio2018-04-221-6/+6
| |
* | fix enum from preloaded script in exportx12122018-03-041-4/+7
| | | | | | | | without triggering unnecessary reloads and parsing.
* | Fix typos with codespellluz.paz2018-02-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt` Whitelist consists of: ``` ang doubleclick lod nd que te unselect ```
* | Merge pull request #15852 from poke1024/color_hsvRémi Verschelde2018-02-191-7/+36
|\ \ | | | | | | Add Color.from_hsv()
| * | Add Color.from_hsv()Bernhard Liebl2018-01-181-7/+36
| | |
* | | Merge pull request #15933 from x1212/fix_preload_in_exportsRémi Verschelde2018-02-191-25/+4
|\ \ \ | | | | | | | | fix spurious error messages during autocomplete and validate
| * | | fix spurious error messages during autocomplete and validatex12122018-02-141-25/+4
| | | | | | | | | | | | | | | | | | | | _parse() caused resets on members like validating and for_completion by calling clear().
* | | | Merge pull request #16173 from vnen/gdscript-argumentsRémi Verschelde2018-02-191-2/+2
|\ \ \ \ | |_|_|/ |/| | | Add argument count check for some GDScript functions
| * | | Add argument count check for some GDScript functionsGeorge Marques2018-01-301-2/+2
| |/ / | | | | | | | | | | | | - Print functions have no check. - Also remove extra apostrophe from the error report.
* / / GDScriptParser: Remove debug prints.Andreas Haas2018-02-021-2/+0
|/ /
* | GDScript: always call ResourceLoader::load() in non-completion modeBernhard Liebl2018-01-211-1/+1
| |
* | Suppress errors on autocompletion for preload()Bernhard Liebl2018-01-181-1/+1
| |
* | Fix typos in code and docs with codespellRémi Verschelde2018-01-181-2/+2
|/ | | | Using v1.11.0 from https://github.com/lucasdemarchi/codespell
* Add missing copyright headers and fix formattingRémi Verschelde2018-01-051-0/+1
| | | | | | Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
* Update copyright statements to 2018Rémi Verschelde2018-01-011-2/+2
| | | | Happy new year to the wonderful Godot community!
* Merge pull request #12845 from remorse107/Array-Dictionary-FixRémi Verschelde2017-12-161-9/+33
|\ | | | | Fix issue #11400. Fixes issue with arrays and dictionary acting as static objects between different instances of objects.
| * Fix issue #11400. Fixes issue with arrays and dictionary acting as static ↵Robert Morse2017-11-171-9/+33
| | | | | | | | objects between different instances of objects.