eden/externals
crueter 7fda6dde73
[common] Switch to boost::unordered_flat containers (#4326)
Replaces all instances of ankerl's unordered map/set with boost's
`unordered_flat_*` classes. This uses std::hash since boost::hash is
actually a lot slower.

Also adds an abstraction layer in `Common` so future changes are quicker
and easier.

Other implementation details:
- ankerl provided hash specializations for tuple and pair, so those were
  ported here
- std::erase_if doesn't work on boost, so just used the ADL'd erase_if

This should be about equal or superior performance as unordered_dense for everything except iteration.

Signed-off-by: crueter <crueter@eden-emu.dev>

- [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions).
- [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md)
- [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability.

-------------------

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4326
Reviewed-by: Lizzie and Samuel <lizzie@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-08-31 02:58:09 +02:00
..
FidelityFX-FSR Update FSR to 1.0.2 2022-01-23 14:38:48 -06:00
bc_decoder video_core: Add BCn decoding support 2023-06-27 18:00:09 -07:00
cmake-modules [cmake] Simplify DetectPlatform and normalize platform names (#4183) 2026-08-10 04:57:38 +02:00
demangle [*] Re-fix clang-cl building (#3940) 2026-05-09 16:26:17 +02:00
ffmpeg [cmake] Simplify DetectPlatform and normalize platform names (#4183) 2026-08-10 04:57:38 +02:00
getopt chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
glad cmake: apply defaults to all externals 2023-05-24 04:57:04 +02:00
libusb [cmake] Simplify DetectPlatform and normalize platform names (#4183) 2026-08-10 04:57:38 +02:00
nx_tzdb [tools] refactor, use #!/bin/sh, update license files (#3998) 2026-05-22 21:15:31 +02:00
renderdoc [externals] update renderdoc to 1.7.0 (#3751) 2026-03-22 04:00:57 +01:00
stb [meta] Discourage profanity usage (#4239) 2026-08-09 02:53:16 +02:00
tz/tz [*] Re-fix clang-cl building (#3940) 2026-05-09 16:26:17 +02:00
CMakeLists.txt [common] Switch to boost::unordered_flat containers (#4326) 2026-08-31 02:58:09 +02:00