Commit Graph

13 Commits

Author SHA1 Message Date
Hein-Pieter van Braam
0e29f7974b Reduce unnecessary COW on Vector by make writing explicit
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.
2018-07-26 00:54:16 +02:00
Pedro J. Estébanez
00e98458ba Revert "Unify http- and percent- encode/decode"
This reverts commit b76ee30917.
2018-04-12 21:12:34 +02:00
Pedro J. Estébanez
b76ee30917 Unify http- and percent- encode/decode
There was a percent-prefixed version, which was exposed, and a http-prefixed version which was not (only to GDNative).
This commit keeps the percent-prefixed versions, but with the http-prefixed implementations.
2018-03-27 19:18:30 +02:00
Ruslan Mustakov
a5e98c5e33 Fix GDNative procedures returning godot_char_string 2018-01-12 22:35:41 +07:00
karroffel
9ece961abe [GDNative] updates to string API and const fixes 2018-01-11 00:17:43 +01:00
Rémi Verschelde
e4213e66b2 Add missing copyright headers and fix formatting
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Rémi Verschelde
b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Karroffel
33ffdba553 [GDNative] removed godot_string_c_str 2017-11-20 11:10:05 +01:00
Thomas Herzog
bd2b1a62d9 Merge pull request #12586 from karroffel/gdnative-gdnlibrary-changes
[GDNative] use feature tags, added load once option
2017-11-14 15:34:07 +01:00
Karroffel
8b11e17f70 [GDNative] small API bug fixes 2017-11-03 16:05:21 +01:00
Karroffel
d82942e1c5 [GDNative] removed anchors 2017-11-03 15:17:50 +01:00
Emmanuel Leblond
e715be0f0a [GDnative] add pluginscript \o/ 2017-10-17 10:50:13 +02:00
Karroffel
7878329e6f merged gdnative and nativescript module 2017-09-03 15:28:43 +02:00