diff options
author | AndreaCatania <info@andreacatania.com> | 2022-04-22 09:20:15 +0200 |
---|---|---|
committer | AndreaCatania <info@andreacatania.com> | 2022-04-22 09:20:15 +0200 |
commit | 40663494881fd4eb6e819e5ec40a55f110090de1 (patch) | |
tree | 99d2c055bfd93c8e9485b7f82927ff6e71be6080 /core/templates | |
parent | f4b0c7a1ea8d86c1dfd96478ca12ad1360903d9d (diff) |
Add mutable OAHashMap::lookup_ptr function to fix mutability.
Diffstat (limited to 'core/templates')
-rw-r--r-- | core/templates/oa_hash_map.h | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/core/templates/oa_hash_map.h b/core/templates/oa_hash_map.h index e4d9323c45..25c21d1802 100644 --- a/core/templates/oa_hash_map.h +++ b/core/templates/oa_hash_map.h @@ -246,13 +246,17 @@ public: return false; } - /** - * returns true if the value was found, false otherwise. - * - * if r_data is not nullptr then the value will be written to the object - * it points to. - */ - TValue *lookup_ptr(const TKey &p_key) const { + const TValue *lookup_ptr(const TKey &p_key) const { + uint32_t pos = 0; + bool exists = _lookup_pos(p_key, pos); + + if (exists) { + return &values[pos]; + } + return nullptr; + } + + TValue *lookup_ptr(const TKey &p_key) { uint32_t pos = 0; bool exists = _lookup_pos(p_key, pos); |