summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/gdscript_parser.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Add documentation for all annotationsYuri Sizov2022-08-191-1/+1
|
* [Net] Modularize multiplayer, expose MultiplayerAPI to extensions.Fabio Alessandrelli2022-07-261-27/+21
| | | | | | | | | - RPC configurations are now dictionaries. - Script.get_rpc_methods renamed to Script.get_rpc_config. - Node.rpc[_id] and Callable.rpc now return an Error. - Refactor MultiplayerAPI to allow extension. - New MultiplayerAPI.rpc method with Array argument (for scripts). - Move the default MultiplayerAPI implementation to a module.
* Fix Vector4 parse errorkobewi2022-07-261-2/+2
|
* Implement Vector4, Vector4i, Projectionreduz2022-07-231-0/+3
| | | | | | | | | | | | | Implement built-in classes Vector4, Vector4i and Projection. * Two versions of Vector4 (float and integer). * A Projection class, which is a 4x4 matrix specialized in projection types. These types have been requested for a long time, but given they were very corner case they were not added before. Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity. **Q**: Why Projection and not Matrix4? **A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
* GDScript: Fix brief/long description doc comments.Vladimir Savin2022-07-181-1/+10
|
* Merge pull request #62901 from ↵George Marques2022-07-131-1/+2
|\ | | | | | | cdemirer/prevent-unnecessary-additional-parser-error
| * Prevent unnecessary additional parser errorcdemirer2022-07-111-1/+2
| |
* | Merge pull request #62900 from cdemirer/fix-parser-stuck-in-an-error-loopGeorge Marques2022-07-131-0/+1
|\ \
| * | Fix parser stuck in an error loopcdemirer2022-07-111-0/+1
| |/
* | Merge pull request #62918 from cdemirer/parser-properly-set-node-extentsGeorge Marques2022-07-131-31/+178
|\ \
| * | Parser: Properly set node extentscdemirer2022-07-111-31/+178
| |/
* | Merge pull request #62922 from YuriSizov/gdscript-annotation-defaultsGeorge Marques2022-07-131-13/+13
|\ \
| * | Add default argument bindings to GDScript annotationsYuri Sizov2022-07-111-13/+13
| |/
* | Merge pull request #62578 from MinusKube/editor-print-crashGeorge Marques2022-07-131-1/+1
|\ \ | |/ |/| Fix GDScript parser sometimes crashing when issuing warning for unreachable pattern
| * Fix GDScript parser sometimes crashing when issuing warning for unreachable ↵MinusKube2022-07-011-1/+1
| | | | | | | | pattern
* | Merge pull request #62701 from cdemirer/for-variable-conflictRémi Verschelde2022-07-061-0/+4
|\ \
| * | Do error when for variable conflicts with a variable in scopecdemirer2022-07-041-0/+4
| |/
* | Merge pull request #62713 from YuriSizov/docs-scripting-annotationsRémi Verschelde2022-07-061-0/+4
|\ \
| * | Add support for documenting built-in annotationsYuri Sizov2022-07-041-0/+4
| |/
* / Add grouping annotations for class properties in GDScriptYuri Sizov2022-07-051-12/+69
|/
* GDScript: Enable exporting nodes to the inspectorGeorge Marques2022-06-271-1/+5
| | | | | Also fix an small issue in the property editor for NodePath trying to use the meta property when not needed.
* Implement varargs in Methodinforeduz2022-06-231-10/+10
| | | | Variadic templates are an awful thing. Implements #62233 using them in MethodInfo so less changes are required.
* Allow autocompletion of "noslider" in export_rangeMarcus Elg2022-06-191-1/+1
|
* Merge pull request #61440 from vnen/gdscript-scene-unique-nodesRémi Verschelde2022-05-311-49/+88
|\ | | | | GDScript: Support `%` in shorthand for `get_node`
| * GDScript: Support `%` in shorthand for `get_node`George Marques2022-05-271-49/+88
| | | | | | | | | | | | The `%` is used in scene unique nodes. Now `%` can also be used instead of `$` for the shorthand, besides being allowed generally anywhere in the path as the prefix for a node name.
* | Merge pull request #59943 from jordigcs/gdscript_warning_enumsRémi Verschelde2022-05-261-1/+7
|\ \ | | | | | | Add enum values (Ignore, Warn, Error) to GDScript warnings
| * | Add enum values (Ignore, Warn, Error) to GDScript warningsjordi2022-04-061-1/+7
| | |
* | | Use blank line instead of `@desc:` for doc commentsDanil Alexeev2022-05-251-18/+17
| |/ |/|
* | GDScript: Fix lambda captures in default argument valuesGeorge Marques2022-05-231-0/+3
| |
* | GDScript: Fix `if` after lambda being seen as ternaryGeorge Marques2022-05-231-1/+1
| |
* | GDScript: Do not allow standalone lambdasGeorge Marques2022-05-231-0/+4
| | | | | | | | | | They cannot be accessed in this case, so an error is shown to avoid misleading the uses, especially in case of named lambdas.
* | Merge pull request #55201 from Scony/fix-unreachable-code-false-positiveRémi Verschelde2022-05-181-5/+1
|\ \
| * | Fix 'unreachable-code' false-positive, fixes #55154Pawel Lampe2021-11-211-5/+1
| | |
* | | Replace most uses of Map by HashMapreduz2022-05-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Map is unnecessary and inefficient in almost every case. * Replaced by the new HashMap. * Renamed Map to RBMap and Set to RBSet for cases that still make sense (order matters) but use is discouraged. There were very few cases where replacing by HashMap was undesired because keeping the key order was intended. I tried to keep those (as RBMap) as much as possible, but might have missed some. Review appreciated!
* | | Fix first value updateJoJoX2022-05-121-0/+1
| | |
* | | Add a new HashMap implementationreduz2022-05-121-15/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a new, cleaned up, HashMap implementation. * Uses Robin Hood Hashing (https://en.wikipedia.org/wiki/Hash_table#Robin_Hood_hashing). * Keeps elements in a double linked list for simpler, ordered, iteration. * Allows keeping iterators for later use in removal (Unlike Map<>, it does not do much for performance vs keeping the key, but helps replace old code). * Uses a more modern C++ iterator API, deprecates the old one. * Supports custom allocator (in case there is a wish to use a paged one). This class aims to unify all the associative template usage and replace it by this one: * Map<> (whereas key order does not matter, which is 99% of cases) * HashMap<> * OrderedHashMap<> * OAHashMap<>
* | | Fix incorrect precedence of pow operator in GDScript Yuri Rubinsky2022-05-121-1/+1
| | |
* | | Implement exponential operator (**) to GDScript/ExpressionsYuri Roubinsky2022-05-111-0/+16
| | |
* | | Merge pull request #59863 from cdemirer/fix-match-multiple-bind-single-patternRémi Verschelde2022-05-111-1/+2
|\ \ \ | | | | | | | | Fix issues with multiple bind patterns in match statement
| * | | Fix issues with multiple bind patterns in match statementcdemirer2022-04-041-1/+2
| | |/ | |/|
* / | GDScript: Allow using self in lambdasGeorge Marques2022-04-241-3/+0
|/ /
* | Merge pull request #59694 from vnen/gdscript-better-call-superRémi Verschelde2022-03-301-1/+5
|\ \
| * | GDScript: Fix issues with completion and `super` callsGeorge Marques2022-03-301-1/+5
| | | | | | | | | | | | | | | | | | - Make call errors use the call node instead of the calle, which will be empty on super calls. - Don't allow `super()` to be used within lambdas.
* | | Fix autocompletion of static methods in built-in types in GDScriptYuri Roubinsky2022-03-301-1/+1
|/ /
* | Merge pull request #58971 from Chaosus/gds_multiline_annotationYuri Rubinsky2022-03-221-0/+2
|\ \
| * | Allow making multiline annotations in GDScriptYuri Roubinsky2022-03-101-0/+2
| | |
* | | Add an error emitting when the `@export_flags` arg count is exceededYuri Roubinsky2022-03-161-0/+9
|/ /
* | Make 'is_attribute' false during parse error to prevent crashSaracenOne2022-02-181-1/+2
| |
* | Refactor some object type checking code with `cast_to`Rémi Verschelde2022-02-081-4/+4
| | | | | | | | Less stringly typed logic, and less String allocations and comparisons.
* | Merge pull request #57591 from vnen/gdscript-enum-fixesRémi Verschelde2022-02-041-2/+0
|\ \