godot/core/templates
aaronp64 6b2674fe18 Reuse and optimize sorting logic for List, SelfList, and HashMap
Added SortList class, and updated List, SelfList, and HashMap sort methods to use it.  Sorting is done with merge sort, with an initial check to optimize for already sorted lists, and sorted lists that were appended to.
2025-06-04 10:18:22 -04:00
..
a_hash_map.cpp Implement array based hash map 2024-10-24 21:34:12 +03:00
a_hash_map.h Add Memory::alloc_static_zeroed to allocate memory that's filled with zeroes. 2025-05-13 01:57:05 +02:00
bin_sorted_array.h Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
bit_field.h Core: Add dedicated BitField template 2025-04-11 11:53:26 -05:00
command_queue_mt.cpp Apply iwyu suggestion in core. 2024-12-19 00:43:47 +08:00
command_queue_mt.h Fix uninitialised member vars in CommandQueueMT and RasterizerSceneGLES3 2025-03-25 17:19:16 +00:00
cowdata.h Add 64-bit versions of core power of 2 functions 2025-06-01 23:11:12 -07:00
fixed_vector.h Add missing headers in FixedVector and Span 2025-05-30 13:41:45 +08:00
hash_map.h Reuse and optimize sorting logic for List, SelfList, and HashMap 2025-06-04 10:18:22 -04:00
hash_set.h Merge pull request #106569 from Ivorforce/hashmap-if-mod 2025-05-27 09:39:29 -05:00
hashfuncs.h Core: Convert Pair/KeyValue to constexpr 2025-05-15 10:37:41 -05:00
interpolated_property.cpp Physics Interpolation - Move 3D FTI to SceneTree 2025-04-26 14:13:30 +01:00
interpolated_property.h Physics Interpolation - Move 3D FTI to SceneTree 2025-04-26 14:13:30 +01:00
list.h Reuse and optimize sorting logic for List, SelfList, and HashMap 2025-06-04 10:18:22 -04:00
local_vector.h Un-support force_trivial parameter for LocalVector. Instead, users are reformatted to use resize_uninitialized to make it explicit that the resize does not initialize missing elements. 2025-05-27 18:43:36 +02:00
lru.h Core: Integrate warning suppression macro helpers 2025-04-03 10:13:46 -05:00
oa_hash_map.h Add Memory::alloc_static_zeroed to allocate memory that's filled with zeroes. 2025-05-13 01:57:05 +02:00
paged_allocator.h Style: Begin integrating simple .clangd fixes 2025-03-22 13:24:35 -05:00
paged_array.h Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
pair.h Core: Convert Pair/KeyValue to constexpr 2025-05-15 10:37:41 -05:00
pass_func.h Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
pooled_list.h Un-support force_trivial parameter for LocalVector. Instead, users are reformatted to use resize_uninitialized to make it explicit that the resize does not initialize missing elements. 2025-05-27 18:43:36 +02:00
rb_map.h Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
rb_set.h Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
rid.h Core: Expand is_zero_constructible coverage 2025-03-17 11:45:26 -05:00
rid_owner.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
rid_owner.h Core: Modernize C headers with C++ equivalents 2025-05-02 08:23:01 -05:00
ring_buffer.h Use LocalVector for RingBuffer 2025-05-21 13:50:10 -04:00
safe_list.h Style: Begin integrating simple .clangd fixes 2025-03-22 13:24:35 -05:00
safe_refcount.h Style: Begin integrating simple .clangd fixes 2025-03-22 13:24:35 -05:00
SCsub SCons: Add unobtrusive type hints in SCons files 2024-09-25 09:34:35 -05:00
self_list.h Reuse and optimize sorting logic for List, SelfList, and HashMap 2025-06-04 10:18:22 -04:00
simple_type.h Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
sort_array.h Adjusted get_median_from_3 and partitioner to also retrieve the pivot's index and check if either end of the partitioner has reached it to avoid comparing things with themselves 2025-05-21 14:38:09 -04:00
sort_list.h Reuse and optimize sorting logic for List, SelfList, and HashMap 2025-06-04 10:18:22 -04:00
span.h Add missing headers in FixedVector and Span 2025-05-30 13:41:45 +08:00
tuple.h Core: Expand is_zero_constructible coverage 2025-03-17 11:45:26 -05:00
vector.h Add resize_initialized and resize_uninitialized to Vector. These functions serve as replacements for resize, to make sure the caller understands whether elements need to be initialized 'by hand' after the call. 2025-05-26 18:35:41 +02:00
vset.h Move bisect to Span and deduplicate code. 2025-05-14 18:19:09 +08:00