|
Blender V4.3
|
#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 &) 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 168 of file BLI_set_slots.hh.
|
inline |
Definition at line 181 of file BLI_set_slots.hh.
|
inline |
Definition at line 186 of file BLI_set_slots.hh.
References blender::TypedBuffer< T, Size >::ref().
|
inline |
Definition at line 193 of file BLI_set_slots.hh.
|
inlinenoexcept |
Definition at line 202 of file BLI_set_slots.hh.
|
inline |
Definition at line 238 of file BLI_set_slots.hh.
References hash, and blender::HashedSetSlot< Key >::key().
|
inline |
Definition at line 231 of file BLI_set_slots.hh.
References BLI_assert, and blender::HashedSetSlot< Key >::is_occupied().
|
inline |
Definition at line 226 of file BLI_set_slots.hh.
|
inline |
Definition at line 221 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 211 of file BLI_set_slots.hh.
Referenced by blender::HashedSetSlot< Key >::contains(), and blender::HashedSetSlot< Key >::occupy().
|
inline |
Definition at line 216 of file BLI_set_slots.hh.
|
inline |
Definition at line 249 of file BLI_set_slots.hh.
References BLI_assert, hash, blender::HashedSetSlot< Key >::is_occupied(), and blender::HashedSetSlot< Key >::key().
|
inline |
Definition at line 257 of file BLI_set_slots.hh.
References BLI_assert, blender::HashedSetSlot< Key >::is_occupied(), and blender::TypedBuffer< T, Size >::ref().