|
Blender
V2.93
|
#include <BLI_set_slots.hh>
Public Member Functions | |
| HashedSetSlot () | |
| ~HashedSetSlot () | |
| HashedSetSlot (const HashedSetSlot &other) | |
| HashedSetSlot (HashedSetSlot &&other) noexcept(std::is_nothrow_move_constructible_v< Key >) | |
| Key * | key () |
| const Key * | key () const |
| bool | is_occupied () const |
| bool | is_empty () const |
| template<typename Hash > | |
| uint64_t | get_hash (const Hash &UNUSED(hash)) const |
| template<typename ForwardKey , typename IsEqual > | |
| bool | contains (const ForwardKey &key, const IsEqual &is_equal, const uint64_t hash) const |
| template<typename ForwardKey > | |
| void | occupy (ForwardKey &&key, const uint64_t hash) |
| void | remove () |
This set slot implementation stores the hash of the key within the slot. This helps when computing the hash or an equality check is expensive.
Definition at line 180 of file BLI_set_slots.hh.
|
inline |
Definition at line 193 of file BLI_set_slots.hh.
|
inline |
Definition at line 198 of file BLI_set_slots.hh.
References blender::TypedBuffer< T, Size >::ref().
|
inline |
Definition at line 205 of file BLI_set_slots.hh.
|
inlinenoexcept |
Definition at line 214 of file BLI_set_slots.hh.
|
inline |
Definition at line 250 of file BLI_set_slots.hh.
References hash, and blender::HashedSetSlot< Key >::key().
|
inline |
Definition at line 243 of file BLI_set_slots.hh.
References BLI_assert, and blender::HashedSetSlot< Key >::is_occupied().
|
inline |
Definition at line 238 of file BLI_set_slots.hh.
|
inline |
Definition at line 233 of file BLI_set_slots.hh.
Referenced by blender::HashedSetSlot< Key >::get_hash(), blender::HashedSetSlot< Key >::occupy(), and blender::HashedSetSlot< Key >::remove().
|
inline |
Definition at line 223 of file BLI_set_slots.hh.
Referenced by blender::HashedSetSlot< Key >::contains(), and blender::HashedSetSlot< Key >::occupy().
|
inline |
Definition at line 228 of file BLI_set_slots.hh.
|
inline |
Definition at line 261 of file BLI_set_slots.hh.
References BLI_assert, hash, blender::HashedSetSlot< Key >::is_occupied(), and blender::HashedSetSlot< Key >::key().
|
inline |
Definition at line 269 of file BLI_set_slots.hh.
References BLI_assert, blender::HashedSetSlot< Key >::is_occupied(), and blender::TypedBuffer< T, Size >::ref().