summaryrefslogtreecommitdiffstats
path: root/core/variant/variant_parser.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Use compatible text resource format when possibleHaoyu Qiu2024-04-231-8/+17
|
* Rename internal is_ascii_char to is_ascii_alphabet_charAaron Franke2024-04-201-2/+2
|
* Merge pull request #89186 from groud/save_byte_arrays_as_base64_encodedRémi Verschelde2024-04-101-11/+82
|\ | | | | | | Save PackedByteArrays as base64 encoded
| * Save PackedByteArrays as base64 encodedGilles Roudière2024-03-061-11/+82
| |
* | [Core] Add iteration support to `Array`A Thousand Ships2024-04-101-4/+6
| |
* | Ignore ERR_FILE_CANT_OPEN error when loading scenekobewi2024-04-051-1/+1
| |
* | Enforce template syntax `typename` over `class`Thaddeus Crews2024-03-071-1/+1
|/
* Don't abort loading when ext_resource is missingkobewi2023-11-221-1/+4
|
* Fix StringName leaks in VariantParserYuri Sizov2023-10-191-1/+1
|
* Extract ScriptInstance to simplify includesYuri Sizov2023-09-061-0/+1
| | | | | | | | | This allows to include script_instance.h directly in the generated gdvirtual.gen.inc, and remove excessive includes from the codebase. This should also allow Resource to use GDVIRTUAL macros, which wasn't possible previously due to a circular dependency.
* Core: Fix recursion level check for `VariantWriter::write()` with objectsDanil Alexeev2023-08-291-37/+20
|
* Ensure `RID`, `Callable`, and `Signal` are stored as stringsNinni Pipping2023-06-221-3/+57
| | | | | Prevents parser errors in `.tscn` and `.tres` files where the assignment would otherwise be empty.
* GDScript: Fix issues with typed arraysDmitrii Maganov2023-01-311-18/+130
|
* Merge pull request #68450 from KoBeWi/bracket_escapistRémi Verschelde2023-01-121-2/+19
|\ | | | | Allow to escape closing brackets in CFG tags
| * Allow to escape closing brackets in CFG tagskobewi2022-11-091-2/+19
| |
* | One Copyright Update to rule them allRémi Verschelde2023-01-051-29/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
* | VariantParser make readahead optionallawnjelly2022-12-121-1/+16
| | | | | | | | | | | | It turns out some areas are independently moving / reading filepointers outside of the VariantParser, which can cause the readahead caching to get out of sync. This PR makes the VariantParser readahead to be optional to allow for these use cases.
* | Merge pull request #69119 from lawnjelly/faster_variant_parser_masterRémi Verschelde2022-12-051-17/+56
|\ \ | | | | | | | | | Add readahead to VariantParser [4.x]
| * | Add readahead to VariantParserlawnjelly2022-11-241-17/+56
| |/ | | | | | | Adds a readahead buffer to VariantParser, to prevent large numbers of freads for single bytes, which is inefficient.
* / Don't break parsing on missing resourceskobewi2022-11-281-1/+1
|/
* Rename Projection `matrix` to `columns`Aaron Franke2022-10-041-1/+1
|
* Fix crash when encoding freed object in ConfigFileHaoyu Qiu2022-09-041-1/+1
|
* Fix Vector4 serializationkobewi2022-07-291-2/+2
|
* Implement Vector4, Vector4i, Projectionreduz2022-07-231-0/+61
| | | | | | | | | | | | | 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.
* Merge pull request #48989 from MarioLiebisch/variant-comment-line-breaksRémi Verschelde2022-05-051-0/+2
|\ | | | | Properly increase line counter when parsing comments
| * Increase line counter when parsing commentsMario Liebisch2021-05-231-0/+2
| |
* | Merge pull request #60627 from aaronfranke/rename-elementsRémi Verschelde2022-05-031-3/+3
|\ \ | | | | | | Rename Transform2D and Basis `elements` to `columns` and `rows` respectively
| * | Rename Basis "elements" to "rows"Aaron Franke2022-04-291-2/+2
| | |
| * | Rename Transform2D "elements" to "columns"Aaron Franke2022-04-291-1/+1
| | |
* | | Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`Hugo Locurcio2022-05-031-6/+6
|/ / | | | | | | | | | | These typedefs don't save much typing compared to the full `Ref<Resource>` and `Ref<RefCounted>`, yet they sometimes introduce confusion among new contributors.
* | Fix more issues found by cppcheck.bruvzg2022-04-201-1/+0
| |
* | Cleanup and move char functions to the `char_utils.h` header.bruvzg2022-02-041-8/+8
| |
* | String: Add contains().Anilforextra2022-02-041-1/+1
| |
* | Add support for the escaped UTF-16 and UTF-32 Unicode characters in the ↵bruvzg2022-01-301-3/+41
| | | | | | | | scripts and expressions.
* | Dictionary: Serialize empty dict as `{}` instead of `{\n}`Rémi Verschelde2022-01-181-4/+5
| | | | | | | | | | Also make sure to always convert multiline dictionaries to a single line for its EditorHelp representation, as multiline values break formatting.
* | Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
| | | | | | | | Happy new year to the wonderful Godot community!
* | Replace String comparisons with "", String() to is_empty()Nathan Franke2021-12-091-2/+2
| | | | | | | | | | | | Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
* | Modify Dictionary::operator== to do real key/value comparison with recursive ↵Emmanuel Leblond2021-10-301-29/+44
| | | | | | | | support (and add unittests)
* | NaN, INF read/write bug fixedThakee Nathees2021-10-051-22/+54
| | | | | | | | Fix: #40589
* | Fixes to tests for Variant and Geometry3DAaron Franke2021-08-171-1/+1
| |
* | Use const references where possible for List range iteratorsRémi Verschelde2021-07-251-1/+1
| |
* | Use C++ iterators for Lists in many situationsAaron Franke2021-07-231-5/+5
| |
* | Use the standard C `INFINITY` and `NAN` constants directlyHugo Locurcio2021-07-211-2/+2
| | | | | | | | | | | | | | The `Math_INF` and `Math_NAN` defines were just aliases for those constants, so we might as well use them directly. Some portions of the code were already using `INFINITY` directly.
* | Fix Variant tags parsing.bruvzg2021-07-051-8/+24
| |
* | Rename `instance()`->`instantiate()` when it's a verbLightning_A2021-06-191-2/+2
| |
* | Better format arguments in variant parserMichael Alexsander Silva Dias2021-06-181-38/+37
| |
* | VariantParser: Fix reading StringNames with '&'.Rémi Verschelde2021-06-121-2/+5
| | | | | | | | | | | | | | Keep support for '@' for now for compatibility. Fixes #49535. Fixes #49542.
* | Rename Reference to RefCountedPedro J. Estébanez2021-06-111-1/+1
| |
* | Let var2str display StringName with correct sigilJonathan Gollnick2021-06-101-1/+1
| |
* | Rename Quat to QuaternionMarcel Admiraal2021-06-041-5/+5
| |