summaryrefslogtreecommitdiff
path: root/core/variant_call.cpp
AgeCommit message (Collapse)Author
2019-09-14Add array slice methodCameron Reikes
2019-08-29Add transform methods for PoolVector*ArrayAndrii Doroshenko (Xrayez)
Similarly to `Vector2` and `Rect2` transforms in 2D and Vector3, Plane, and AABB in 3D. PoolVector2Array and PoolVector3Array were the only missing Variant types in both Transform2D and Transform respectively.
2019-08-23Merge pull request #31094 from aaronfranke/vector-sign-mod-etcRémi Verschelde
Add Vector2/3 sign and posmod functions, axis, docs, misc additions
2019-08-22Revert "Feature: Add SHA256 for PoolByteArray"Rémi Verschelde
This reverts commit e2c3bbabb0a12f58585bb441d91ee8882225b0ee. This was superseded by #29871 which adds more crypto features with a dedicated interface. Since this commit was never in a stable release (merged during 3.2 dev), we revert it to avoid having to deprecate it in favor of the Crypto API. See https://github.com/godotengine/godot/pull/31187#issuecomment-523377965
2019-08-21Add hex_encode function to PoolByteArrayFabio Alessandrelli
2019-08-19Move CryptoCore to it's own folder.Fabio Alessandrelli
Crypto classes will be placed in core/crypto.
2019-08-17Add Vector2/3 sign and posmod functions, misc additionsAaron Franke
Also make the docs more consistent, add Axis enum to Vector2, add > and >=. and C# also gets % and an override for vector-vector mod.
2019-08-17Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in 'core/' and 'editor/'Braden Bodily
Condensed some if and ERR statements. Added dots to end of error messages Couldn't figure out EXPLAINC. These files gave me trouble: core/error_macros.h, core/io/file_access_buffered_fa.h (where is it?), core/os/memory.cpp, drivers/png/png_driver_common.cpp, drivers/xaudio2/audio_driver_xaudio2.cpp (where is it?)
2019-08-09Add Basis constants and format Transform constantsAaron Franke
2019-07-28[Mono] Deprecate Set methodsAaron Franke
These silently fail, so they should be removed. I accidentally added most of these last year, trying to make everything else consistent with Quat, sorry! Also, a few tiny nitpicking changes are included, like whitespace and misspellings.
2019-07-23Added count method to StringChaosus
2019-07-20Changed some code showed in LGTM and Coverageqarmin
2019-07-06Added release function to PoolVector::Access.Ibrahn Sahir
For clarity, assign-to-release idiom for PoolVector::Read/Write replaced with a function call. Existing uses replaced (or removed if already handled by scope)
2019-07-03Add sha1 functions to string (using new CryptoCore)Fabio Alessandrelli
2019-07-02CryptoCore class to access to base crypto utils.Fabio Alessandrelli
Godot core needs MD5/SHA256/AES/Base64 which used to be provided by separate libraries. Since we bundle mbedtls in most cases, and we can easily only include the needed sources if we so desire, let's use it. To simplify library changes in the future, and better isolate header dependencies all functions have been wrapped around inside a class in `core/math/crypto_base.h`. If the mbedtls module is disabled, we only bundle the needed source files independently of the `builtin_mbedtls` option. If the module is enabled, the `builtin_mbedtls` option works as usual. Also remove some unused headers from StreamPeerMbedTLS which were causing build issues.
2019-06-19Merge pull request #28648 from KoBeWi/substr-1Rémi Verschelde
Make second parameter of substr optional
2019-06-19Merge pull request #29598 from GodotExplorer/uri-encodeRémi Verschelde
Expose String.http_escape and String.http_unescape
2019-06-11Improved documentation of rsplit Method for String class.Zak
Improved documentation of rsplit Method for String class. Removed "divisor" (i will also change variants_call.cpp) and added "delimiter" in its place. Also moved the example at the bottom of the description.
2019-06-08Expose String.http_escape and String.http_unescapegeequlim
2019-06-01Merge pull request #27789 from Giacom/move_towardsRémi Verschelde
Added move_toward functions for float, Vector2 and Vector3
2019-05-31Fix and expose String::strip_escapes(), use it in LineEdit pasteRémi Verschelde
Supersedes #27736.
2019-05-28Added move_toward functions for float, Vector2 and Vector3Giacom
2019-05-03Make second parameter of substr optionalTomasz Chabora
2019-04-23Merge pull request #24269 from xsellier/feature/master-add-sha256Hein-Pieter van Braam
Add SHA256 for PoolByteArray
2019-04-08Add ability to edit editor feature profilesJuan Linietsky
Allows enabling/disabling parts of the editor and storing/loading profiles for that.
2019-04-08Merge pull request #27452 from Chaosus/direction_toRémi Verschelde
Added method to retrieve a direction vector from one point to another
2019-04-06Fixed Transform FLIP_Y and FLIP_Z set as identity transformPouleyKetchoupp
2019-04-05Added direction_to method to vectorsChaosus
2019-04-01Some improvements to is_equal_approx, restored Quat operator.Juan Linietsky
2019-02-21Fix return value for Dictionary.erase()Windy Darian
2019-02-20Add -Wshadow=local to warnings and fix reported issues.marxin
Fixes #25316.
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
2018-12-24Bind `is_valid_hex_number` string method to GDScriptAndrii Doroshenko (Xrayez)
2018-12-10Feature: Add SHA256 for PoolByteArrayXavier Sellier
2018-11-19Merge pull request #20627 from malcolmhoward/core-dictionary-get-keyRémi Verschelde
#20488 core dictionary get key
2018-11-19Added Python-like .get() method to Dictionary in GDScript #20488m
Added .get() method to Dictionary class in GDScript to return the value if the key exists, or return Null if the key does not exist.
2018-11-17Always initialize VariantCall return_type.Fabio Alessandrelli
The return_type is used by the GDScript parser (and possibly other scripting languages), so it MUST be initialized at least. It could be initialized to Variant::NIL in release, but I see no reason for not setting the actual value. See similar issue in 95dfa5b .
2018-10-07add ONE constants to Vector2 and Vector3Kelly Thomas
2018-09-12Make core/ includes absolute, remove subfolders from include pathRémi Verschelde
This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
2018-08-23Added max() and min() functions to array to return greater or lesser element ↵Juan Linietsky
(or null if data is not of compatible type or empty array). Closes #15697
2018-08-21Merge pull request #21253 from aaronfranke/plane-constantsRémi Verschelde
Rename Plane constants, add to Mono
2018-08-21Rename Plane constants, add to MonoAaron Franke
But I'm not tagging PR as [Core] or [Mono] due to it being a minor change anyway.
2018-08-21Remove circle/diamond and NodePath String constantsRémi Verschelde
They were introduced in #14704 but need more discussion IMO, they don't strike me as core features that would have to be registered in Variant directly. Moreover, they currently break the documentation XML as string constants end up encoded as e.g. `value=""..""`.
2018-08-16add project method to Vector2/3Thomas Herzog
2018-08-15Merge pull request #20945 from neikeq/dict-erase-retboolRémi Verschelde
Dictionary: remove erase_checked(key), make erase(key) return bool
2018-08-14Dictionary: remove erase_checked(key), make erase(key) return boolIgnacio Etcheverry
2018-08-14Fix int(String) != int(int) conversionChaosus
2018-07-31Allow some non-integer built-in constants in gdscriptBernhard Liebl
2018-07-26Merge pull request #18282 from aaronfranke/better-mathfRémi Verschelde
[Core] [Mono] Fix Color missing int export methods, added 64-bit
2018-07-26Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam
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.