summaryrefslogtreecommitdiff
path: root/modules/gdscript/gdscript_cache.cpp
AgeCommit message (Collapse)Author
2022-05-20Add a new HashSet templatereduz
* Intended to replace RBSet in most cases. * Optimized for iteration speed
2022-05-16Replace most uses of Map by HashMapreduz
* 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!
2022-04-11Make FileAccess and DirAccess classes reference counted.bruvzg
2022-01-22GDScript cache crashfix.K. S. Ernest (iFire) Lee
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-10Revert "Fix auto reload scripts on external change"Rémi Verschelde
2021-12-09Replace String comparisons with "", String() to is_empty()Nathan Franke
Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
2021-12-09Merge pull request #49473 from cptchuckles/fix-auto-reload-scriptsRémi Verschelde
2021-10-06GDScript: Set status on parsing steps beforehandGeorge Marques
To avoid potential dependency cycles. If any happens it will not get into infinite recursion anymore and errors will cascade later on.
2021-09-11Avoid crash after a parsing error in GDScriptPedro J. Estébanez
2021-09-02Fix auto reload scripts on external changeJonathan Gollnick
2021-08-16Fix crash when failing to load script from cachePouleyKetchoupp
2021-06-19Rename `instance()`->`instantiate()` when it's a verbLightning_A
2021-06-11Core: Move DirAccess and FileAccess to `core/io`Rémi Verschelde
File handling APIs are typically considered part of I/O, and we did have most `FileAccess` implementations in `core/io` already.
2021-05-25Rename File::get_len() get_length()Marcel Admiraal
2021-05-17Make all file access 64-bit (uint64_t)Pedro J. Estébanez
This changes the types of a big number of variables. General rules: - Using `uint64_t` in general. We also considered `int64_t` but eventually settled on keeping it unsigned, which is also closer to what one would expect with `size_t`/`off_t`. - We only keep `int64_t` for `seek_end` (takes a negative offset from the end) and for the `Variant` bindings, since `Variant::INT` is `int64_t`. This means we only need to guard against passing negative values in `core_bind.cpp`. - Using `uint32_t` integers for concepts not needing such a huge range, like pages, blocks, etc. In addition: - Improve usage of integer types in some related places; namely, `DirAccess`, core binds. Note: - On Windows, `_ftelli64` reports invalid values when using 32-bit MinGW with version < 8.0. This was an upstream bug fixed in 8.0. It breaks support for big files on 32-bit Windows builds made with that toolchain. We might add a workaround. Fixes #44363. Fixes godotengine/godot-proposals#400. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-01-01Update copyright statements to 2021Rémi Verschelde
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 🎆
2020-11-07Reorganized core/ directory, it was too fatty alreadyreduz
-Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
2020-09-09GDScript: Fix MutexLock usage, fixes Clang 6 compatRémi Verschelde
Fixes #41852.
2020-08-23GDScript: Use pointer instead of references in cacheGeorge Marques
They are not supposed to be kept alive and this is cleaner and less error-prone than unreferencing the elements.
2020-08-17GDScript: Fix crash when superclass file is non-existentGeorge Marques
Incidentally, allow EOF to be an end of statement.
2020-07-22Wrap up GDScript 2.0 base implementationGeorge Marques
2020-07-20Add GDScript cache singletonGeorge Marques