8#ifndef INCLUDED_BSLALG_HASHTABLEANCHOR
9#define INCLUDED_BSLALG_HASHTABLEANCHOR
499#include <bslscm_version.h>
511#ifndef BDE_DONT_ALLOW_TRANSITIVE_INCLUDES
519struct HashTableBucket;
548 std::size_t d_bucketArraySize;
653 std::size_t bucketArraySize,
655: d_bucketArrayAddress_p(bucketArrayAddress)
656, d_bucketArraySize(bucketArraySize)
657, d_listRootAddress_p(listRootAddress)
668 std::size_t bucketArraySize)
682 d_listRootAddress_p = value;
697 return d_listRootAddress_p;
703 return d_bucketArraySize;
709 return d_bucketArrayAddress_p;
725 return lhs.bucketArrayAddress() ==
rhs.bucketArrayAddress()
726 &&
lhs.bucketArraySize() ==
rhs.bucketArraySize()
727 &&
lhs.listRootAddress() ==
rhs.listRootAddress();
734 return lhs.bucketArrayAddress() !=
rhs.bucketArrayAddress()
735 ||
lhs.bucketArraySize() !=
rhs.bucketArraySize()
736 ||
lhs.listRootAddress() !=
rhs.listRootAddress();
Definition bslalg_bidirectionallink.h:347
BidirectionalLink * previousLink() const
Return the address of the preceding node linked from this node.
Definition bslalg_bidirectionallink.h:428
Definition bslalg_hashtableanchor.h:542
BidirectionalLink * listRootAddress() const
Return the value listRootAddress attribute of this object.
Definition bslalg_hashtableanchor.h:695
void setBucketArrayAddressAndSize(HashTableBucket *bucketArrayAddress, std::size_t bucketArraySize)
Definition bslalg_hashtableanchor.h:666
std::size_t bucketArraySize() const
Return the value of the bucketArraySize attribute of this object.
Definition bslalg_hashtableanchor.h:701
void swap(HashTableAnchor &other)
Definition bslalg_hashtableanchor.h:688
~HashTableAnchor()
Destroy this object.
BSLMF_NESTED_TRAIT_DECLARATION(HashTableAnchor, bslmf::IsBitwiseCopyable)
HashTableAnchor(HashTableBucket *bucketArrayAddress, std::size_t bucketArraySize, BidirectionalLink *listRootAddress)
Definition bslalg_hashtableanchor.h:652
HashTableAnchor(const HashTableAnchor &original)=default
void setListRootAddress(BidirectionalLink *value)
Definition bslalg_hashtableanchor.h:678
HashTableBucket * bucketArrayAddress() const
Definition bslalg_hashtableanchor.h:707
#define BSLS_ASSERT_SAFE(X)
Definition bsls_assert.h:1917
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
ALLOCATOR const STRING_VIEW_LIKE_TYPE & rhs
Definition bslstl_string.h:3918
ALLOCATOR & lhs
Definition bslstl_string.h:3917
Definition bdlc_flathashmap.h:2218
void swap(HashTableAnchor &a, HashTableAnchor &b)
bool operator==(const HashTableAnchor &lhs, const HashTableAnchor &rhs)
bool operator!=(const HashTableAnchor &lhs, const HashTableAnchor &rhs)
Definition bslalg_hashtablebucket.h:297
static void swap(LHS_TYPE &lhs, RHS_TYPE &rhs)
Definition bslalg_scalarprimitives.h:2501
Definition bslmf_isbitwisecopyable.h:298