virtualx-engine/core/io
reduz 8b7c7f5a75 Add a new HashMap implementation
Adds a new, cleaned up, HashMap implementation.

* Uses Robin Hood Hashing (https://en.wikipedia.org/wiki/Hash_table#Robin_Hood_hashing).
* Keeps elements in a double linked list for simpler, ordered, iteration.
* Allows keeping iterators for later use in removal (Unlike Map<>, it does not do much
  for performance vs keeping the key, but helps replace old code).
* Uses a more modern C++ iterator API, deprecates the old one.
* Supports custom allocator (in case there is a wish to use a paged one).

This class aims to unify all the associative template usage and replace it by this one:
* Map<> (whereas key order does not matter, which is 99% of cases)
* HashMap<>
* OrderedHashMap<>
* OAHashMap<>
2022-05-12 11:21:29 +02:00
..
compression.cpp Vectors: Use clear() and has(). 2022-02-02 00:11:09 +05:45
compression.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
config_file.cpp Add a new HashMap implementation 2022-05-12 11:21:29 +02:00
config_file.h Add a new HashMap implementation 2022-05-12 11:21:29 +02:00
dir_access.cpp Narrow FileAccess scope to prevent deadlocks. 2022-04-12 10:54:39 +03:00
dir_access.h Make FileAccess and DirAccess classes reference counted. 2022-04-11 13:28:51 +03:00
dtls_server.cpp Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
dtls_server.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
file_access.cpp Narrow FileAccess scope to prevent deadlocks. 2022-04-12 10:54:39 +03:00
file_access.h Remove or make private FileAccess close() methods. 2022-04-12 14:50:14 +03:00
file_access_compressed.cpp Remove or make private FileAccess close() methods. 2022-04-12 14:50:14 +03:00
file_access_compressed.h Remove or make private FileAccess close() methods. 2022-04-12 14:50:14 +03:00
file_access_encrypted.cpp Remove or make private FileAccess close() methods. 2022-04-12 14:50:14 +03:00
file_access_encrypted.h Remove or make private FileAccess close() methods. 2022-04-12 14:50:14 +03:00
file_access_memory.cpp Remove or make private FileAccess close() methods. 2022-04-12 14:50:14 +03:00
file_access_memory.h Remove or make private FileAccess close() methods. 2022-04-12 14:50:14 +03:00
file_access_network.cpp Remove or make private FileAccess close() methods. 2022-04-12 14:50:14 +03:00
file_access_network.h Style: Partially apply clang-tidy's cppcoreguidelines-pro-type-member-init 2022-05-02 16:28:25 +02:00
file_access_pack.cpp Improve embedded PCK loading and exporting. 2022-04-20 11:09:59 +03:00
file_access_pack.h Fix more issues found by cppcheck. 2022-04-20 10:34:00 +03:00
file_access_zip.cpp Remove or make private FileAccess close() methods. 2022-04-12 14:50:14 +03:00
file_access_zip.h Style: Partially apply clang-tidy's cppcoreguidelines-pro-type-member-init 2022-05-02 16:28:25 +02:00
http_client.cpp Verify custom HTTP headers, fix off by one error 2022-01-27 03:22:37 +01:00
http_client.h Verify custom HTTP headers, fix off by one error 2022-01-27 03:22:37 +01:00
http_client_tcp.cpp [Net] Make StreamPeerTCP::_poll_connection explicit. 2022-03-27 16:36:44 +02:00
http_client_tcp.h [Net] Non-blocking request in HTTPClientTCP. 2022-02-03 02:45:30 +01:00
image.cpp Fix invalid memory usage when using Image.convert 2022-05-11 17:39:27 +08:00
image.h Merge pull request #50175 from kleonc/image-blit-blend-fix-rects 2022-04-19 16:30:08 +02:00
image_loader.cpp Remove RES and REF typedefs in favor of spelled out Ref<> 2022-05-03 01:43:50 +02:00
image_loader.h Remove RES and REF typedefs in favor of spelled out Ref<> 2022-05-03 01:43:50 +02:00
ip.cpp Style: Partially apply clang-tidy's cppcoreguidelines-pro-type-member-init 2022-05-02 16:28:25 +02:00
ip.h Zero initialize all pointer class and struct members 2022-04-04 19:49:50 +02:00
ip_address.cpp Cleanup and move char functions to the char_utils.h header. 2022-02-04 11:35:01 +02:00
ip_address.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
json.cpp Cleanup and move char functions to the char_utils.h header. 2022-02-04 11:35:01 +02:00
json.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
logger.cpp Narrow FileAccess scope to prevent deadlocks. 2022-04-12 10:54:39 +03:00
logger.h Fix more issues found by cppcheck. 2022-04-20 10:34:00 +03:00
marshalls.cpp Merge pull request #60627 from aaronfranke/rename-elements 2022-05-03 14:40:01 +02:00
marshalls.h Fixed variant decoding Segmentation Fault 2022-02-14 23:04:05 +03:00
missing_resource.cpp Add a new HashMap implementation 2022-05-12 11:21:29 +02:00
missing_resource.h Add a new HashMap implementation 2022-05-12 11:21:29 +02:00
net_socket.cpp Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
net_socket.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
packed_data_container.cpp Fix some issues found by cppcheck. 2022-04-06 14:34:37 +03:00
packed_data_container.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
packet_peer.cpp Vectors: Use clear() and has(). 2022-02-02 00:11:09 +05:45
packet_peer.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
packet_peer_dtls.cpp Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
packet_peer_dtls.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
packet_peer_udp.cpp [Net] Drop is_connected_to_host for TCP and UDP. 2022-03-27 16:36:44 +02:00
packet_peer_udp.h [Net] Drop is_connected_to_host for TCP and UDP. 2022-03-27 16:36:44 +02:00
pck_packer.cpp Remove or make private FileAccess close() methods. 2022-04-12 14:50:14 +03:00
pck_packer.h Make FileAccess and DirAccess classes reference counted. 2022-04-11 13:28:51 +03:00
resource.cpp Add a new HashMap implementation 2022-05-12 11:21:29 +02:00
resource.h Remove RES and REF typedefs in favor of spelled out Ref<> 2022-05-03 01:43:50 +02:00
resource_format_binary.cpp Fix warnings found by Emscripten 3.1.10 2022-05-10 13:03:13 +02:00
resource_format_binary.h Remove RES and REF typedefs in favor of spelled out Ref<> 2022-05-03 01:43:50 +02:00
resource_importer.cpp Remove RES and REF typedefs in favor of spelled out Ref<> 2022-05-03 01:43:50 +02:00
resource_importer.h Remove RES and REF typedefs in favor of spelled out Ref<> 2022-05-03 01:43:50 +02:00
resource_loader.cpp Implement missing Node & Resource placeholders 2022-05-03 17:08:09 +02:00
resource_loader.h Implement missing Node & Resource placeholders 2022-05-03 17:08:09 +02:00
resource_saver.cpp Remove RES and REF typedefs in favor of spelled out Ref<> 2022-05-03 01:43:50 +02:00
resource_saver.h Remove RES and REF typedefs in favor of spelled out Ref<> 2022-05-03 01:43:50 +02:00
resource_uid.cpp Add a new HashMap implementation 2022-05-12 11:21:29 +02:00
resource_uid.h Add a new HashMap implementation 2022-05-12 11:21:29 +02:00
SCsub SCons: Format buildsystem files with psf/black 2020-03-30 09:05:53 +02:00
stream_peer.cpp Vectors: Use clear() and has(). 2022-02-02 00:11:09 +05:45
stream_peer.h Object: Remove unused category boilerplate 2022-03-26 15:46:01 +01:00
stream_peer_ssl.cpp Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
stream_peer_ssl.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
stream_peer_tcp.cpp [Net] Fix StreamPeerTCP accepted status. 2022-05-04 20:13:32 +02:00
stream_peer_tcp.h Merge pull request #59582 from Faless/net/4.x_tcp_explicit_poll 2022-04-27 13:56:58 +02:00
tcp_server.cpp Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
tcp_server.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
translation_loader_po.cpp Remove RES and REF typedefs in favor of spelled out Ref<> 2022-05-03 01:43:50 +02:00
translation_loader_po.h Remove RES and REF typedefs in favor of spelled out Ref<> 2022-05-03 01:43:50 +02:00
udp_server.cpp Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
udp_server.h Zero initialize all pointer class and struct members 2022-04-04 19:49:50 +02:00
xml_parser.cpp Make FileAccess and DirAccess classes reference counted. 2022-04-11 13:28:51 +03:00
xml_parser.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
zip_io.cpp Fix ZipIO crash when reused (and possible leaks). 2022-05-11 16:08:17 +03:00
zip_io.h Fix ZipIO crash when reused (and possible leaks). 2022-05-11 16:08:17 +03:00