mirror of
https://github.com/AxioDL/metaforce.git
synced 2025-07-08 04:05:53 +00:00
It's quite common to see maps or sets that make use of a string->object association, usually as <std::string, T>. However, this can result in inefficient code when performing lookups or indexing, as something like: std::map<std::string, T> some_map; ... auto iter = some_map.find("Name"); ... will result in a std::string instance being constructed around "Name", which is less than ideal. With a heterogenous comparator, however (such as std::less<>), like: std::map<std::string, T, std::less<>> we allow the container to do automatic type deduction and comparisons. This allows types comparable to the key type to be used in find calls, etc, without actually needing to construct the key type around the other type. The main way to enable containers to perform such behavior is by defining a type named is_transparent within the comparator type.
Description
Data interchange, editor suite, and runtime re-implementations for games by Retro Studios
Languages
C++
94.2%
C
4.5%
CMake
1.2%