This complex constrained in‐_core_ (value‐semantic) attribute class characterizes the key data elements of a hash table. See the section information on the class attributes. Note that the class invariant is the identically the complex constraint of this component.

Synopsis

Declared in <bslalg_hashtableanchor.h>

class HashTableAnchor;

Description

This class: * supports a complete set of value‐semantic operations

  • except for bdex serialization and default construction * is in‐core * is exception‐neutral (agnostic) * is alias‐safe * is const thread‐safe For terminology see bsldoc_glossary.

Member Functions

Name

Description

HashTableAnchor [constructor]

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.

bucketArrayAddress

Return the value of the bucketArrayAddress attribute of this object.

bucketArraySize

Return the value of the bucketArraySize attribute of this object.

listRootAddress

Return the value listRootAddress attribute of this object.

setBucketArrayAddressAndSize

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.

setListRootAddress

Set the listRootAddress attribute of this object to the specified value.

swap

Efficiently exchange the value of this object with the value of the specified other object. This method provides the no‐throw exception‐safety guarantee.

operator BloombergLP::bslmf::NestedTraitDeclaration<HashTableAnchor, IsBitwiseCopyable>

Declare HashTableAnchor as bitwise copyable.

Non-Member Functions

Name

Description

operator!=

Return true if the specified lhs and rhs objects do not have the same value, and false otherwise. Two bslalg::HashTableAnchor objects do not have the same value if any of the corresponding values of their bucketArrayAddress, bucketArraySize, or listRootAddress attributes are not the same.

operator==

Return true if the specified lhs and rhs objects have the same value, and false otherwise. Two bslalg::HashTableAnchor objects have the same value if all of the corresponding values of their bucketArrayAddress, bucketArraySize, and listRootAddress attributes are the same.

swap

Efficiently exchange the values of the specified a and b objects. This function provides the no‐throw exception‐safety guarantee. The behavior is undefined unless the two objects were created with the same allocator.

Created with MrDocs