Enumerator |
---|
eDefaultBucketCount |
|
eDefaultBucketSize |
|
Create a hash table.
- Parameters
-
theBucketCount | The number of buckets to use for the hash table. This should be a prime number for best results. |
theBucketSize | The initial size of each bucket in the hash table. |
XalanDOMStringHashTable::~XalanDOMStringHashTable |
( |
) | |
|
size_t XalanDOMStringHashTable::bucketCount |
( |
) | |
const |
Get the number of buckets in the table.
- Returns
- The number of buckets in the table
void XalanDOMStringHashTable::clear |
( |
) | |
|
size_t XalanDOMStringHashTable::collisions |
( |
) | |
const |
Get the collision count.
Release builds will always return 0.
- Returns
- The number of collisions. Valid only for non-release builds.
Find a string.
If the string is not found, return null.
- Parameters
-
theString | The string to find. |
theBucketIndex | The index of the bucket for the string. |
- Returns
- a pointer to the string, or null if not found.
Find a string.
If the string is not found, return null. If theBucketIndex is not null, the variable pointed to will be updated with the bucket index that was calculated for the string. This index can be used in a later call to insert() to avoid recalculating the index.
- Parameters
-
theString | The string to find. |
theLength | The number of characters in the string. |
theBucketIndex | A pointer to an unsigned int to get the bucket index |
- Returns
- a pointer to the string, or null if not found.
void XalanDOMStringHashTable::getBucketCounts |
( |
BucketCountsType & |
theVector) | |
const |
Get the size of each of the buckets in the table.
- Parameters
-
A | vector to return the bucket counts. |
void XalanDOMStringHashTable::insert |
( |
const XalanDOMString & |
theString) | |
|
Insert a pointer to a string into the table.
If the string is already present, the string will still be added, but it will never be found, since it will be placed after the identical string.
Note that this class only stores a pointer to a XalanDOMString. It's expected that the string will be allocated and managed outside of the hash table.
- Parameters
-
theString | The string to insert. |
void XalanDOMStringHashTable::insert |
( |
const XalanDOMString & |
theString, |
|
|
size_t |
theBucketIndex |
|
) |
| |
Insert a pointer to a string into the table.
If the string is already present, the string will still be added, but it will never be found, since it will be placed after the identical string. theBucketIndex must be the index returned from a previous call to find. If not, then the behavior is undefined. This is meant as an optimization to avoid re-hashing the string.
Note that this class only stores a pointer to a XalanDOMString. It's expected that the string will be allocated and managed outside of the hash table.
- Parameters
-
theString | The string to insert. |
theBucketIndex | The index of the bucket for the string. |
size_t XalanDOMStringHashTable::size |
( |
) | |
const |
Get the number of strings in the table.
- Returns
- The number of strings in the table
The documentation for this class was generated from the following file: