summaryrefslogtreecommitdiff
path: root/core
AgeCommit message (Collapse)Author
2017-09-27Build MSVC safe_refcount in a separate compilation unitHein-Pieter van Braam
Including windows.h in a globally included header gives all kinds of issues. Move the MSVC implementation for safe_refcount back into a .cpp file to prevent this from happening.
2017-09-25Merge pull request #11445 from Cradmon/refactorCoreMapRémi Verschelde
Refactor core/map.h
2017-09-25Merge pull request #11518 from hpvb/gdscript-direct-dispatchRémi Verschelde
Some more GDScript performance optimizations
2017-09-25Merge pull request #11567 from QuLogic/scons-var-typesRémi Verschelde
Add types to scons command-line options
2017-09-25Fixed constness of variant functions, as well as visual script sequence ↵Juan Linietsky
ports. Closes #11258
2017-09-25Use BoolVariable for third-party options.Elliott Sales de Andrade
2017-09-25Make variant_op jumptable constHein-Pieter van Braam
Not doing this was a bit of an oversight
2017-09-25Allow inlining of all parts of safe_refcountHein-Pieter van Braam
Differences with this aren't huge but the effort is minimal, in some workloads gain a couple of percent of performance.
2017-09-24Merge pull request #11549 from hpvb/fix-11543Hein-Pieter van Braam
Fix Dictionary set_named
2017-09-24Fix Variant::get_named return when p_index is invalidMarcelo Fernandez
2017-09-24Fix Dictionary set_namedHein-Pieter van Braam
Reduz optimized field indexing in 3c85703 but the changes didn't apply to dictionary so this code remained untouched. However, the logic for validity checking was changed but not updated for the dictionary case.
2017-09-24Merge pull request #11473 from hpvb/fix-11466Rémi Verschelde
Implement operator != on Pool*Array types
2017-09-23Enable building against system zstd.Elliott Sales de Andrade
2017-09-23Massive optimization to Variant::set_named/get_named. Should give a nice ↵Juan Linietsky
boost to GDScript.
2017-09-22Implement operator != on Pool*Array typesHein-Pieter van Braam
These types previously had equality checks but not inequality checks. Add these too. This fixes #11466
2017-09-22Merge pull request #11461 from hpvb/add-likely-macrosRémi Verschelde
Implement Linux-style likely()/unlikely() macros
2017-09-21Fixed a bunch of typos, including an error code.Ross Hadden
2017-09-21Implement Linux-style likely()/unlikely() macrosHein-Pieter van Braam
This implement branch prediction macros likely() and unlikely() like in Linux. When using these macros please ensure that when you use them the condition in the branch really is very, very likely or unlikely. Think 90+% of the time. Primarily useful for error checking. (And I implement these macros for all our error checking macros now) See this article for more information: https://kernelnewbies.org/FAQ/LikelyUnlikely There are more places where these macros may make sense in renderer and physics engine. Placing them will come in another commit down the line.
2017-09-20Fix import order, so scenes are imported after textures.Juan Linietsky
Also fix bugs when meshes are always generated.
2017-09-20Refactor core/map.h to be similar to core/set.hCradmon
2017-09-20Merge pull request #11437 from hpvb/allow-compare-to-nullJuan Linietsky
Allow equality checks between null and arbitrary types
2017-09-20Allow equality checks between null and arbitrary typesHein-Pieter van Braam
Uninitialzed values in GDScript are of type NIL so not allowing null comparisons did end up breaking some code. This commit reenables NULL equality checks for all types. We're going to have to figure out how to make this fast for the compiler later.
2017-09-20Refactor core/set.hCradmon
2017-09-20Merge pull request #11409 from MarufSarker/PR-core-math-is_nanRémi Verschelde
Verbose and Platform-specific implementation for is_nan
2017-09-20Rename pos to position in user facing methods and variablesletheed
Rename user facing methods and variables as well as the corresponding C++ methods according to the folloming changes: * pos -> position * rot -> rotation * loc -> location C++ variables are left as is.
2017-09-20verbose and platform specific implementation for is_nanABU MD. MARUF SARKER
2017-09-19Merge pull request #10748 from Cradmon/fixCoreSetRémi Verschelde
Refactor core/set.h
2017-09-19Merge pull request #11208 from kitsune/hex-color-shortcutsRémi Verschelde
Adds 3 and 4 digit html shortcuts to Color
2017-09-19Merge pull request #11388 from hpvb/fix-missing-return-failRémi Verschelde
Be type-strict checking on equality checks
2017-09-19Allow booleanization of all typesHein-Pieter van Braam
We now allow booleanization of all types. This means that empty versions of all types now evaluate to false. So a Vector2(0,0), Dictionary(), etc. This allows you to write GDScript like: if not Dictionary(): print("Empty dict") Booleanization can now also no longer fail. There is no more valid flag, this changes Variant and GDNative API.
2017-09-19Merge pull request #11405 from karroffel/new-hashmapRémi Verschelde
added OAHashMap type
2017-09-19added OAHashMap typeKarroffel
2017-09-19Be type-strict checking on equality checksHein-Pieter van Braam
After a short discussion with @reduz and @karroffel we decided to make all non number/number comparisons return type errors on comparisons. Now bool == bool is allowed but Vector2 == Vector3 is a type error and no longer 'not equal'. The same has been done for the != operators. In addition I forgot to add some failures to some Object operators meaning that there was a potential for a crasher.
2017-09-19Merge pull request #11402 from hpvb/remove-gdscript-checks-on-releaseRémi Verschelde
Various GDScript performance tweaks
2017-09-19Don't call Variant::reference() unnecessarilyHein-Pieter van Braam
operator= does not need to call reference() if the new value is of the same type as the old. This saves us zeroing the Variant, This speeds up reuse of a Variant in a loop by roughly 50%.
2017-09-19Merge pull request #11386 from kosz78/fix-msvc-compile-errorsRémi Verschelde
Fix MSVC compilation errors
2017-09-19Fix accidental cast to Vector3 for Vector2 iterHein-Pieter van Braam
2017-09-19Fixed Typo: 'Seperate' to 'Separate'Indah Sylvia
2017-09-19Fix MSVC compilation errorsKonstantin Zaitsev
2017-09-17Move Variant::evaluate() switch to computed gotoHein-Pieter van Braam
In an effort to make GDScript a little faster replace the double switch() with a computed goto on compilers that set __GNUC__. For compilers that don't support computed goto it will fall back to regular switch/case statements. In addition disable using boolean values in a mathematical context. Now boolean values can only be compared with other booleans. Booleans will also no longer be coerced to integers. This PR replaces #11308 and fixes #11291
2017-09-17Fix x11 exported executables not getting the +x flagMarcelo Fernandez
2017-09-17Merge pull request #11294 from karroffel/json-objectThomas Herzog
added JSON singleton
2017-09-17Merge pull request #11272 from Rubonnek/move-to-initializer-listRémi Verschelde
Moved class_name and return_val to initializer list
2017-09-17Merge pull request #11176 from bncastle/masterRémi Verschelde
Implement +,-,/, * and negate operators for Color type
2017-09-17Merge pull request #11343 from BastiaanOlij/fix_basenameRémi Verschelde
Fixed naming of pck file
2017-09-17Fixed naming of pck fileBastiaan Olij
2017-09-17Merge pull request #11223 from GodotExplorer/pr-undoredoPoommetee Ketson
Expose more methods for UndoRedo
2017-09-16Implement +,-,/, * and negate operators for Color type.bncastle
2017-09-16Adds _OS::PowerState enumIgnacio Etcheverry
2017-09-15added JSON singletonkarroffel
There was no way to access JSON functionality in scripting languages apart from GDScript because the JSON class wasn't exposed to ClassDB.