godot/core
Juan Linietsky 88f84c78ca Store arrays inside of Variant as shared.
Arrays inside of Variant are unique and use reference counting.
When you assign a variant containing a packed array to another, or
when you call non const functions to arrays, this will work even
if the array is inside a dictionary, so they will from now pass
as reference.

The difference with regular variant arrays is that, once passed
to a function in the C++ API, they are no longer shared. This is
required for security and thread safety, as those arrays are
mainly used to pass data back and forth even between threads.
2020-02-23 22:42:26 +01:00
..
bind Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
crypto PoolVector is gone, replaced by Vector 2020-02-18 10:10:36 +01:00
io Merge pull request #36461 from akien-mga/c++17-fallthrough-attribute 2020-02-23 08:43:18 +01:00
math Add support for Vector2i, Rect2i and Vector3i to Variant 2020-02-22 23:16:44 +01:00
os Added StringName as a variant type. 2020-02-21 14:25:29 +01:00
SCsub Update zstd to 1.4.3 2019-11-03 10:37:48 -06:00
array.cpp Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
array.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
callable.cpp Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
callable.h Created the callable_mp macro, for signals to call method pointers directly. 2020-02-21 13:46:45 +01:00
callable_method_pointer.cpp Created the callable_mp macro, for signals to call method pointers directly. 2020-02-21 13:46:45 +01:00
callable_method_pointer.h Created the callable_mp macro, for signals to call method pointers directly. 2020-02-21 13:46:45 +01:00
class_db.cpp Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
class_db.h Created the callable_mp macro, for signals to call method pointers directly. 2020-02-21 13:46:45 +01:00
color.cpp Remove deprecated Color::gray 2020-02-12 11:22:33 +01:00
color.h Remove deprecated Color::gray 2020-02-12 11:22:33 +01:00
color_names.inc doc: Document named color constants 2020-01-26 12:08:16 +01:00
command_queue_mt.cpp Added a spinlock template as well as a thread work pool class. 2020-02-11 11:53:29 +01:00
command_queue_mt.h Added a spinlock template as well as a thread work pool class. 2020-02-11 11:53:29 +01:00
compressed_translation.cpp PoolVector is gone, replaced by Vector 2020-02-18 10:10:36 +01:00
compressed_translation.h PoolVector is gone, replaced by Vector 2020-02-18 10:10:36 +01:00
core_builders.py SCons: Generate header with info on which modules are enabled 2020-02-07 11:31:37 +01:00
core_string_names.cpp Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
core_string_names.h Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
cowdata.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
dictionary.cpp Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
dictionary.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
engine.cpp More GIProbe work and fixes 2020-02-11 12:03:49 +01:00
engine.h More GIProbe work and fixes 2020-02-11 12:03:49 +01:00
error_list.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
error_macros.cpp Improve and document error macros 2020-01-24 17:19:57 +01:00
error_macros.h Remove do{ } while(0) wrapper around error macros. 2020-02-08 11:21:46 +01:00
func_ref.cpp Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
func_ref.h Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
global_constants.cpp Added StringName as a variant type. 2020-02-21 14:25:29 +01:00
global_constants.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
hash_map.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
hashfuncs.h ObjectID converted to a structure, fixes many bugs where used incorrectly as 32 bits. 2020-02-12 14:24:54 -03:00
image.cpp PoolVector is gone, replaced by Vector 2020-02-18 10:10:36 +01:00
image.h PoolVector is gone, replaced by Vector 2020-02-18 10:10:36 +01:00
input_map.cpp Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
input_map.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
int_types.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
list.h Refactor List operator[] to prevent compiler warnings. 2020-02-11 10:29:01 +01:00
make_binders.py Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
map.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
message_queue.cpp Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
message_queue.h Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
method_bind.cpp Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
method_bind.h Created the callable_mp macro, for signals to call method pointers directly. 2020-02-21 13:46:45 +01:00
method_ptrcall.h Added StringName as a variant type. 2020-02-21 14:25:29 +01:00
node_path.cpp Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
node_path.h Added StringName as a variant type. 2020-02-21 14:25:29 +01:00
oa_hash_map.h Initial work on Vulkan: 2020-02-11 11:53:26 +01:00
object.cpp Added StringName as a variant type. 2020-02-21 14:25:29 +01:00
object.h Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
object_id.h Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
ordered_hash_map.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
packed_data_container.cpp Replace FALLTHROUGH macro by C++17 [[fallthrough]] 2020-02-23 00:52:50 +01:00
packed_data_container.h PoolVector is gone, replaced by Vector 2020-02-18 10:10:36 +01:00
pair.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
path_remap.cpp Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
path_remap.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
pool_allocator.cpp Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
pool_allocator.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
print_string.cpp Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
print_string.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
project_settings.cpp PoolVector is gone, replaced by Vector 2020-02-18 10:10:36 +01:00
project_settings.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
reference.cpp Changed logic and optimized ObjectID in ObjectDB and Variant, removed RefPtr. 2020-02-15 08:36:04 -03:00
reference.h Fix Ref(Variant) constructor to properly check the object type 2020-02-19 10:58:00 -03:00
register_core_types.cpp Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
register_core_types.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
resource.cpp Added StringName as a variant type. 2020-02-21 14:25:29 +01:00
resource.h Changed logic and optimized ObjectID in ObjectDB and Variant, removed RefPtr. 2020-02-15 08:36:04 -03:00
rid.h Modify RenderingDevice to use RIDs, now that they are O(1) 2020-02-11 11:53:26 +01:00
rid_owner.cpp Vulkan: Move thirdparty code out of drivers, style fixes 2020-02-11 14:08:44 +01:00
rid_owner.h Vulkan: Move thirdparty code out of drivers, style fixes 2020-02-11 14:08:44 +01:00
ring_buffer.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
safe_refcount.cpp Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
safe_refcount.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
script_debugger_local.cpp Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
script_debugger_local.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
script_debugger_remote.cpp Huge Debugger/EditorDebugger refactor. 2020-02-21 11:12:03 +01:00
script_debugger_remote.h Huge Debugger/EditorDebugger refactor. 2020-02-21 11:12:03 +01:00
script_language.cpp Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
script_language.h Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
self_list.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
set.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
simple_type.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
sort_array.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
spin_lock.h Vulkan: Move thirdparty code out of drivers, style fixes 2020-02-11 14:08:44 +01:00
string_buffer.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
string_builder.cpp Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
string_builder.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
string_name.cpp Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
string_name.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
thread_work_pool.cpp Vulkan: Move thirdparty code out of drivers, style fixes 2020-02-11 14:08:44 +01:00
thread_work_pool.h Fixes some memory leaks 2020-02-13 09:46:13 +08:00
translation.cpp PoolVector is gone, replaced by Vector 2020-02-18 10:10:36 +01:00
translation.h PoolVector is gone, replaced by Vector 2020-02-18 10:10:36 +01:00
type_info.h Added StringName as a variant type. 2020-02-21 14:25:29 +01:00
typedefs.h Replace FALLTHROUGH macro by C++17 [[fallthrough]] 2020-02-23 00:52:50 +01:00
ucaps.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
undo_redo.cpp Added StringName as a variant type. 2020-02-21 14:25:29 +01:00
undo_redo.h Added StringName as a variant type. 2020-02-21 14:25:29 +01:00
ustring.cpp Replace FALLTHROUGH macro by C++17 [[fallthrough]] 2020-02-23 00:52:50 +01:00
ustring.h A lot of progress with canvas rendering, still far from working. 2020-02-11 11:53:27 +01:00
variant.cpp Store arrays inside of Variant as shared. 2020-02-23 22:42:26 +01:00
variant.h Store arrays inside of Variant as shared. 2020-02-23 22:42:26 +01:00
variant_call.cpp Store arrays inside of Variant as shared. 2020-02-23 22:42:26 +01:00
variant_op.cpp Store arrays inside of Variant as shared. 2020-02-23 22:42:26 +01:00
variant_parser.cpp Merge pull request #36461 from akien-mga/c++17-fallthrough-attribute 2020-02-23 08:43:18 +01:00
variant_parser.h Added StringName as a variant type. 2020-02-21 14:25:29 +01:00
vector.h PoolVector is gone, replaced by Vector 2020-02-18 10:10:36 +01:00
version.h PCK: Set VERSION_PATCH in header, factor out header magic 2020-01-06 13:13:17 +01:00
vmap.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
vset.h Update copyright statements to 2020 2020-01-01 11:16:22 +01:00