di 0.1.0
|
#include <di/container/hash/node/owning_node_hash_table.h>
Public Member Functions | |
constexpr auto | allocator () -> Alloc & |
template<typename U, concepts::Invocable F> | |
constexpr auto | insert_with_factory (U &&needle, F &&factory) -> InsertResult |
template<typename U, concepts::Invocable F> | |
constexpr auto | insert_with_factory (ConstIterator, U &&needle, F &&factory) |
![]() | |
NodeHashTable ()=default | |
NodeHashTable (NodeHashTable const &)=delete | |
auto | operator= (NodeHashTable const &) -> NodeHashTable &=delete |
constexpr | NodeHashTable (Eq eq, Hasher hasher={}) |
constexpr | NodeHashTable (NodeHashTable &&other) |
constexpr auto | operator= (NodeHashTable &&other) -> NodeHashTable & |
constexpr | ~NodeHashTable () |
constexpr auto | size () const -> usize |
constexpr auto | empty () const -> bool |
constexpr auto | bucket_count () const -> usize |
constexpr auto | begin () -> Iterator |
constexpr auto | begin () const -> ConstIterator |
constexpr auto | end () -> Iterator |
constexpr auto | end () const -> ConstIterator |
constexpr auto | unconst_iterator (ConstIterator it) -> Iterator |
constexpr auto | insert_node (Node &node) |
constexpr auto | insert_node (ConstIterator, Node &node) |
constexpr auto | erase_impl (ConstIterator it) -> Iterator |
constexpr auto | equal_range_impl (U &&needle) const |
constexpr auto | find_impl (U &&needle) const -> ConstIterator |
constexpr auto | reserve (usize new_capacity) -> decltype(util::declval< Buckets & >().reserve_from_nothing(new_capacity)) |
constexpr void | merge_impl (NodeHashTable &&other) |
NodeHashTable ()=default | |
NodeHashTable (NodeHashTable const &)=delete | |
constexpr | NodeHashTable (Eq eq, Hasher hasher={}) |
constexpr | NodeHashTable (NodeHashTable &&other) |
auto | operator= (NodeHashTable const &) -> NodeHashTable &=delete |
constexpr auto | operator= (NodeHashTable &&other) -> NodeHashTable & |
constexpr | ~NodeHashTable () |
constexpr auto | size () const -> usize |
constexpr auto | empty () const -> bool |
constexpr auto | bucket_count () const -> usize |
constexpr auto | begin () -> Iterator |
constexpr auto | begin () const -> ConstIterator |
constexpr auto | end () -> Iterator |
constexpr auto | end () const -> ConstIterator |
constexpr auto | unconst_iterator (ConstIterator it) -> Iterator |
constexpr auto | insert_node (Node &node) |
constexpr auto | insert_node (ConstIterator, Node &node) |
constexpr auto | erase_impl (ConstIterator it) -> Iterator |
constexpr auto | equal_range_impl (U &&needle) const |
constexpr auto | find_impl (U &&needle) const -> ConstIterator |
constexpr auto | reserve (usize new_capacity) -> decltype(util::declval< Buckets & >().reserve_from_nothing(new_capacity)) |
constexpr void | merge_impl (NodeHashTable &&other) |
Additional Inherited Members | |
![]() | |
using | Node |
using | Iterator |
using | ConstIterator |
using | ConcreteNode |
using | Key |
![]() | |
constexpr auto | down_cast_self () -> decltype(auto) |
constexpr auto | node_value (Node &node) const -> Value & |
constexpr auto | node_value (Node const &node) const -> Value const & |
constexpr void | merge_impl_without_rehashing (NodeHashTable &&other) |
constexpr auto | insert_node_without_rehashing (Node &node, bool call_insertion_hook=true) |
constexpr auto | hash (U const &value) const -> u64 |
constexpr auto | hash (Value const &value) const -> u64 |
constexpr auto | equal (T const &a, U const &b) const -> bool |
constexpr auto | equal (T const &a, Value const &b) const -> bool |
constexpr auto | equal (Value const &a, T const &b) const -> bool |
constexpr auto | equal (Value const &a, Value const &b) const -> bool |
constexpr auto | down_cast_self () -> decltype(auto) |
constexpr auto | node_value (Node &node) const -> Value & |
constexpr auto | node_value (Node const &node) const -> Value const & |
constexpr void | merge_impl_without_rehashing (NodeHashTable &&other) |
constexpr auto | insert_node_without_rehashing (Node &node, bool call_insertion_hook=true) |
constexpr auto | hash (U const &value) const -> u64 |
constexpr auto | hash (Value const &value) const -> u64 |
constexpr auto | equal (T const &a, U const &b) const -> bool |
constexpr auto | equal (T const &a, Value const &b) const -> bool |
constexpr auto | equal (Value const &a, T const &b) const -> bool |
constexpr auto | equal (Value const &a, Value const &b) const -> bool |
![]() | |
Buckets | m_buckets |
usize | m_size |
Eq | m_eq |
Hasher | m_hasher |
Buckets | m_buckets |
usize | m_size |
Eq | m_eq |
Hasher | m_hasher |
![]() | |
static constexpr bool | allow_rehashing_in_insert |
static constexpr bool | allow_rehashing_in_insert |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |