[#BloombergLP-bslalg-HashTableImpUtil-find] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslalg.adoc[bslalg]::xref:BloombergLP/bslalg/HashTableImpUtil.adoc[HashTableImpUtil]::find :relfileprefix: ../../../ :mrdocs: Return the address of the first link in the list element of the specified `anchor`, having a value matching (according to the specified `equalityFunctor`) the specified `key` in the bucket that holds elements with the specified `hashCode` if such a link exists, and return 0 otherwise. The behavior is undefined unless, for the provided `KEY_CONFIG` and some hash function, `HASHER`, `anchor` is well‐formed (see `isWellFormed`) and `HASHER(key)` returns `hashCode`. `KEY_CONFIG` shall be a namespace providing the type names `KeyType` and `ValueType`, as well as a function that can be called as if it had the following signature: ` const KeyType& extractKey(const ValueType& obj); ` `KEY_EQUAL` shall be a functor that can be called as if it had the following signature: ` bool operator()(const KEY_CONFIG::KeyType& key1, const KEY_CONFIG::KeyType& key2) ` == Synopsis Declared in `<bslalg_hashtableimputil.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class KEY_CONFIG, class KEY_EQUAL> static xref:BloombergLP/bslalg/BidirectionalLink.adoc[BidirectionalLink]* find( xref:BloombergLP/bslalg/HashTableAnchor.adoc[HashTableAnchor] const& anchor, HashTableImpUtil_ExtractKeyResult<KEY_CONFIG>::Type key, KEY_EQUAL const& equalityFunctor, std::size_t hashCode); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#