BDE 4.14.0 Production release
|
#include <bslalg_hashtableanchor.h>
Public Member Functions | |
BSLMF_NESTED_TRAIT_DECLARATION (HashTableAnchor, bslmf::IsBitwiseCopyable) | |
HashTableAnchor (HashTableBucket *bucketArrayAddress, std::size_t bucketArraySize, BidirectionalLink *listRootAddress) | |
HashTableAnchor (const HashTableAnchor &original) | |
~bslalg | HashTableAnchor () |
Destroy this object. | |
void | setBucketArrayAddressAndSize (HashTableBucket *bucketArrayAddress, std::size_t bucketArraySize) |
void | setListRootAddress (BidirectionalLink *value) |
void | swap (HashTableAnchor &other) |
HashTableBucket * | bucketArrayAddress () const |
std::size_t | bucketArraySize () const |
Return the value of the bucketArraySize attribute of this object. | |
BidirectionalLink * | listRootAddress () const |
Return the value listRootAddress attribute of this object. | |
This complex constrained in-*core* (value-semantic) attribute class characterizes the key data elements of a hash table. See the Attributes section information on the class attributes. Note that the class invariant is the identically the complex constraint of this component.
This class:
bdex
serialization and default constructionconst
thread-safe For terminology see bsldoc_glossary .
|
inline |
Create a bslalg::HashTableAnchor
object having the specified bucketArrayAddress
, bucketArraySize
, and listRootAddress
attributes. The behavior is undefined unless bucketArrayAddress
refers to a contiguous sequence of valid bslalg::HashTableBucket
objects of at least bucketArraySize
or unless both bucketArrayAddress
and bucketArraySize
are 0.
|
inline |
Create a bslalg::HashTableAnchor
object having the same value as the specified original
object.
~bslalg bslalg::HashTableAnchor::HashTableAnchor | ( | ) |
bslalg::HashTableAnchor::BSLMF_NESTED_TRAIT_DECLARATION | ( | HashTableAnchor | , |
bslmf::IsBitwiseCopyable | |||
) |
|
inline |
Return the value of the bucketArrayAddress
attribute of this object.
|
inline |
|
inline |
|
inline |
Set the bucket array address and bucket array size attributes of this object to the specified bucketArrayAddress
and bucketArraySize
values. The behavior is undefined unless bucketArrayAddress
refers to a contiguous sequence of valid bslalg::HashTableBucket
objects of at least bucketArraySize
, or unless both bucketArrayAddress
and bucketArraySize
are 0.
|
inline |
Set the listRootAddress
attribute of this object to the specified value
.
|
inline |
Efficiently exchange the value of this object with the value of the specified other
object. This method provides the no-throw exception-safety guarantee.