HDK
|
#include <denseHashSet.h>
Public Types | |
typedef Element | value_type |
typedef _Vector::const_iterator | iterator |
typedef _Vector::const_iterator | const_iterator |
A const_iterator type for this set. More... | |
typedef std::pair < const_iterator, bool > | insert_result |
Return type for insert() method. More... | |
This is a space efficient container that mimics the TfHashSet API that uses a vector for storage when the size of the set is small.
When the set gets bigger than Threshold
a TfHashMap is allocated that is used to accelerate lookup in the vector.
Definition at line 57 of file denseHashSet.h.
typedef _Vector::const_iterator TfDenseHashSet< Element, HashFn, EqualElement, Threshold >::const_iterator |
A const_iterator type for this set.
Definition at line 88 of file denseHashSet.h.
typedef std::pair<const_iterator, bool> TfDenseHashSet< Element, HashFn, EqualElement, Threshold >::insert_result |
Return type for insert() method.
Definition at line 91 of file denseHashSet.h.
typedef _Vector::const_iterator TfDenseHashSet< Element, HashFn, EqualElement, Threshold >::iterator |
An iterator type for this set. Note that this one is const as well, as we can't allow in-place modification of elements due to the potentially allocated hash map.
Definition at line 85 of file denseHashSet.h.
typedef Element TfDenseHashSet< Element, HashFn, EqualElement, Threshold >::value_type |
Definition at line 66 of file denseHashSet.h.
|
inlineexplicit |
Ctor.
Definition at line 97 of file denseHashSet.h.
|
inline |
Copy Ctor.
Definition at line 105 of file denseHashSet.h.
|
default |
Move Ctor.
|
inline |
Construct from range.
Definition at line 118 of file denseHashSet.h.
|
inline |
Construct from an initializer_list.
Definition at line 124 of file denseHashSet.h.
|
inline |
Returns an const_iterator pointing to the beginning of the set.
Definition at line 203 of file denseHashSet.h.
|
inline |
Erases all of the elements
Definition at line 174 of file denseHashSet.h.
|
inline |
Returns the number of elements with key k
. Which is either 0 or 1.
Definition at line 236 of file denseHashSet.h.
|
inline |
true
if the set's
size is 0.
Definition at line 191 of file denseHashSet.h.
|
inline |
Returns an const_iterator pointing to the end of the set.
Definition at line 209 of file denseHashSet.h.
|
inline |
Erase element with key k
. Returns the number of elements erased.
Definition at line 305 of file denseHashSet.h.
|
inline |
Erases element pointed to by iter
.
Definition at line 317 of file denseHashSet.h.
|
inline |
Erases a range from the set.
Definition at line 342 of file denseHashSet.h.
|
inline |
Finds the element with key k
.
Definition at line 215 of file denseHashSet.h.
|
inline |
Returns a pair of <iterator, bool> where iterator points to the element in the list and bool is true if a new element was inserted.
Definition at line 243 of file denseHashSet.h.
|
inline |
Insert a range into the hash set. Note that i0
and i1
can't point into the hash set.
Definition at line 275 of file denseHashSet.h.
|
inline |
Insert a range of unique elements into the container. [begin, end) must not contain any duplicate elements.
Definition at line 292 of file denseHashSet.h.
|
inline |
Definition at line 168 of file denseHashSet.h.
|
inline |
Copy assignment operator.
Definition at line 130 of file denseHashSet.h.
|
default |
Move assignment operator.
|
inline |
Assignment from an initializer_list.
Definition at line 144 of file denseHashSet.h.
|
inline |
Equality operator.
Definition at line 152 of file denseHashSet.h.
|
inline |
Index into set via index
.
Definition at line 385 of file denseHashSet.h.
|
inline |
Optimize storage space.
Definition at line 359 of file denseHashSet.h.
|
inline |
Returns the size of the set.
Definition at line 197 of file denseHashSet.h.
|
inline |
Swaps the contents of two sets.
Definition at line 181 of file denseHashSet.h.