|
| constexpr | Map () noexcept=default |
| | Default construct: empty without allocation (capacity=0) More...
|
| |
| constexpr | Map (Foam::zero) noexcept |
| | Construct empty without allocation (capacity=0) More...
|
| |
| | Map (const label initialCapacity) |
| | Construct empty with given initial table capacity. More...
|
| |
| | Map (Istream &is) |
| | Construct from Istream (with default initial table capacity) More...
|
| |
| | Map (const this_type &map) |
| | Copy construct. More...
|
| |
| | Map (this_type &&map) noexcept |
| | Move construct. More...
|
| |
| | Map (std::initializer_list< std::pair< label, T >> map, const bool overwrite=false) |
| | Construct from key/value pairs in initializer list. More...
|
| |
| | Map (const UList< label > &keys, const UList< T > &values, const bool overwrite=false) |
| | Construct from key/value pairs. More...
|
| |
| void | operator= (const this_type &rhs) |
| | Copy assignment. More...
|
| |
| void | operator= (this_type &&rhs) |
| | Move assignment. More...
|
| |
| constexpr | HashTable () noexcept |
| | Default construct: empty without allocation (capacity=0) More...
|
| |
| constexpr | HashTable (Foam::zero) noexcept |
| | Construct empty without allocation (capacity=0) More...
|
| |
| | HashTable (const label initialCapacity) |
| | Construct empty with initial table capacity. More...
|
| |
| | HashTable (Istream &is) |
| | Construct from Istream. More...
|
| |
| | HashTable (const this_type &ht) |
| | Copy construct. More...
|
| |
| | HashTable (this_type &&rhs) noexcept |
| | Move construct. More...
|
| |
| | HashTable (std::initializer_list< std::pair< label, T >> list, const bool overwrite=false) |
| | Construct from key/value pairs in initializer list. More...
|
| |
| | HashTable (const UList< label > &keys, const UList< T > &values, const bool overwrite=false) |
| | Construct from key/value pairs. More...
|
| |
| | ~HashTable () |
| | Destructor. More...
|
| |
| bool | empty () const noexcept |
| | True if the hash table is empty. More...
|
| |
| label | size () const noexcept |
| | The number of elements in table. More...
|
| |
| label | capacity () const noexcept |
| | The size of the underlying table (the number of buckets) More...
|
| |
| T & | at (const label &key) |
| | Find and return a hashed entry. FatalError if it does not exist. More...
|
| |
| const T & | at (const label &key) const |
| | Find and return a hashed entry. FatalError if it does not exist. More...
|
| |
| bool | contains (const label &key) const |
| | True if hashed key is contained (found) in table. More...
|
| |
| iterator | find (const label &key) |
| | Find and return an iterator set at the hashed entry. More...
|
| |
| const_iterator | find (const label &key) const |
| | Find and return an const_iterator set at the hashed entry. More...
|
| |
| const_iterator | cfind (const label &key) const |
| | Find and return an const_iterator set at the hashed entry. More...
|
| |
| const T & | lookup (const label &key, const T &deflt) const |
| | Return hashed entry if it exists, or return the given default. More...
|
| |
| List< label > | toc () const |
| | The table of contents (the keys) in unsorted order. More...
|
| |
| List< label > | sortedToc () const |
| | The table of contents (the keys) in sorted order. More...
|
| |
| List< label > | sortedToc (const Compare &comp) const |
| | The table of contents (the keys) sorted according to the specified comparator. More...
|
| |
| Foam::List< label > | sortedToc (const Compare &comp) const |
| |
| List< label > | tocKeys (const UnaryPredicate &pred, const bool invert=false) const |
| | The table of contents (the keys) selected according to the unary predicate applied to the keys. More...
|
| |
| Foam::List< label > | tocKeys (const UnaryPredicate &pred, const bool invert) const |
| |
| List< label > | tocValues (const UnaryPredicate &pred, const bool invert=false) const |
| | The table of contents (the keys) selected according to the unary predicate applied to the values. More...
|
| |
| Foam::List< label > | tocValues (const UnaryPredicate &pred, const bool invert) const |
| |
| List< label > | tocEntries (const BinaryPredicate &pred, const bool invert=false) const |
| | The table of contents (the keys) selected according to the binary predicate applied to the keys and values. More...
|
| |
| Foam::List< label > | tocEntries (const BinaryPredicate &pred, const bool invert) const |
| |
| UPtrList< const node_type > | csorted () const |
| | Const access to the hash-table contents in sorted order (sorted by keys). More...
|
| |
| UPtrList< node_type > | sorted () |
| | Non-const access to the hash-table contents in sorted order (sorted by keys). More...
|
| |
| UPtrList< const node_type > | sorted () const |
| | Deprecated(2023-07) use csorted() method. More...
|
| |
| label | countKeys (const UnaryPredicate &pred, const bool invert=false) const |
| | Count the number of keys that satisfy the unary predicate. More...
|
| |
| Foam::label | countKeys (const UnaryPredicate &pred, const bool invert) const |
| |
| label | countValues (const UnaryPredicate &pred, const bool invert=false) const |
| | Count the number of values that satisfy the unary predicate. More...
|
| |
| Foam::label | countValues (const UnaryPredicate &pred, const bool invert) const |
| |
| label | countEntries (const BinaryPredicate &pred, const bool invert=false) const |
| | Count the number of entries that satisfy the binary predicate. More...
|
| |
| Foam::label | countEntries (const BinaryPredicate &pred, const bool invert) const |
| |
| bool | emplace (const label &key, Args &&... args) |
| | Emplace insert a new entry, not overwriting existing entries. More...
|
| |
| bool | emplace_set (const label &key, Args &&... args) |
| | Emplace set an entry, overwriting any existing entries. More...
|
| |
| bool | insert (const label &key, const T &obj) |
| | Copy insert a new entry, not overwriting existing entries. More...
|
| |
| bool | insert (const label &key, T &&obj) |
| | Move insert a new entry, not overwriting existing entries. More...
|
| |
| bool | set (const label &key, const T &obj) |
| | Copy assign a new entry, overwriting existing entries. More...
|
| |
| bool | set (const label &key, T &&obj) |
| | Move assign a new entry, overwriting existing entries. More...
|
| |
| bool | erase (const iterator &iter) |
| | Erase an entry specified by given iterator. More...
|
| |
| bool | erase (const label &key) |
| | Erase an entry specified by the given key. More...
|
| |
| label | erase (const HashTable< AnyType, label, AnyHash > &other) |
| | Remove table entries given by keys of the other hash-table. More...
|
| |
| label | erase (std::initializer_list< label > keys) |
| | Remove table entries given by the listed keys. More...
|
| |
| label | erase (InputIter first, InputIter last) |
| | Remove multiple entries using an iterator range of keys. More...
|
| |
| label | erase (const FixedList< label, N > &keys) |
| | Remove table entries given by the listed keys. More...
|
| |
| label | erase (const UList< label > &keys) |
| | Remove table entries given by the listed keys. More...
|
| |
| Foam::label | erase (InputIter first, InputIter last) |
| |
| Foam::label | erase (const FixedList< label, N > &keys) |
| |
| Foam::label | erase (const HashTable< AnyType, label, AnyHash > &other) |
| |
| label | retain (const HashTable< AnyType, label, AnyHash > &other) |
| | Retain table entries given by keys of the other hash-table. More...
|
| |
| Foam::label | retain (const HashTable< AnyType, label, AnyHash > &other) |
| |
| label | filterKeys (const UnaryPredicate &pred, const bool pruning=false) |
| | Generalized means to filter table entries based on their keys. More...
|
| |
| Foam::label | filterKeys (const UnaryPredicate &pred, const bool pruning) |
| |
| label | filterValues (const UnaryPredicate &pred, const bool pruning=false) |
| | Generalized means to filter table entries based on their values. More...
|
| |
| Foam::label | filterValues (const UnaryPredicate &pred, const bool pruning) |
| |
| label | filterEntries (const BinaryPredicate &pred, const bool pruning=false) |
| | Generalized means to filter table entries based on their key/value. More...
|
| |
| Foam::label | filterEntries (const BinaryPredicate &pred, const bool pruning) |
| |
| void | clear () |
| | Remove all entries from table. More...
|
| |
| void | clearStorage () |
| | Remove all entries from table and the table itself. More...
|
| |
| void | setCapacity (label newCapacity) |
| | Change the hash table capacity (number of buckets). More...
|
| |
| void | resize (label newCapacity) |
| | Rehash the hash table with new number of buckets. Currently identical to setCapacity() More...
|
| |
| void | reserve (label numEntries) |
| | Reserve space for at least the specified number of elements (not the number of buckets) and regenerates the hash table. More...
|
| |
| void | swap (HashTable< T, label, Hash< label > > &rhs) noexcept |
| | Swap contents into this table. More...
|
| |
| void | transfer (HashTable< T, label, Hash< label > > &rhs) |
| | Transfer contents into this table. More...
|
| |
| void | merge (HashTable< T, label, Hash< label > > &source) |
| | Attempts to extract entries from source parameter and insert them into this, does not overwrite existing entries. The source will contains any items that could not be merged. More...
|
| |
| void | merge (HashTable< T, label, Hash< label > > &&source) |
| | Attempts to extract entries from source parameter and insert them into this, does not overwrite existing entries. The source will contains any items that could not be merged. More...
|
| |
| T & | operator[] (const label &key) |
| | Find and return a hashed entry. FatalError if it does not exist. More...
|
| |
| const T & | operator[] (const label &key) const |
| | Find and return a hashed entry. FatalError if it does not exist. More...
|
| |
| T & | operator() (const label &key) |
| | Return existing entry or create a new entry. More...
|
| |
| T & | operator() (const label &key, const T &deflt) |
| | Return existing entry or insert a new entry. More...
|
| |
| void | operator= (const this_type &rhs) |
| | Copy assign. More...
|
| |
| void | operator= (std::initializer_list< std::pair< label, T >> rhs) |
| | Copy assign from an initializer list. More...
|
| |
| void | operator= (this_type &&rhs) |
| | Move assign. More...
|
| |
| bool | operator== (const this_type &rhs) const |
| | Equality. Tables are equal if all keys and values are equal, independent of order or underlying storage size. More...
|
| |
| bool | operator!= (const this_type &rhs) const |
| | The opposite of the equality operation. More...
|
| |
| this_type & | operator+= (const this_type &rhs) |
| | Add entries into this HashTable. More...
|
| |
| const_iterator_pair< const_key_iterator, this_type > | keys () const |
| | A const iterator begin/end pair for iterating over keys. More...
|
| |
| iterator | begin () |
| | iterator set to the beginning of the HashTable More...
|
| |
| const_iterator | begin () const |
| | const_iterator set to the beginning of the HashTable More...
|
| |
| const_iterator | cbegin () const |
| | const_iterator set to the beginning of the HashTable More...
|
| |
| iterator | end () noexcept |
| | iterator to signal the end (for any HashTable) More...
|
| |
| const_iterator | end () const noexcept |
| | const_iterator to signal the end (for any HashTable) More...
|
| |
| constexpr const_iterator | cend () const noexcept |
| | const_iterator to signal the end (for any HashTable) More...
|
| |
| Ostream & | printInfo (Ostream &os) const |
| | Print information. More...
|
| |
| Ostream & | writeKeys (Ostream &os, const label shortLen=0) const |
| | Write unordered keys (list), with line-breaks when length exceeds shortLen. More...
|
| |
| bool | found (const label &key) const |
| | Same as contains() More...
|
| |
| | ClassName ("HashTable") |
| | Declare type-name (with debug switch) More...
|
| |
| constexpr | HashTableCore () noexcept=default |
| | Default construct. More...
|
| |