[#bsl-unordered_map-0e6] = xref:bsl.adoc[bsl]::xref:bsl/unordered_map-02b.adoc[unordered_map<KEY, VALUE, HASH, bsl::equal_to<KEY>, ALLOCATOR>] :relfileprefix: ../ :mrdocs: Deduce the template parameters `KEY` and `VALUE` from the `value_type` of the iterators supplied to the constructor of `unordered_map`. Deduce the template parameters `HASH` and `ALLOCATOR` from the other parameters passed to the constructor of `unordered_map`. This deduction guide does not participate unless the supplied hash is invokable with a `KEY` and the supplied allocator meets the requirements of a standard allocator. == Synopsis Declared in `<bslstl_unorderedmap.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class INPUT_ITERATOR, class HASH, class ALLOCATOR, class KEY = xref:BloombergLP/bslstl/IteratorUtil/IterKey_t.adoc[BloombergLP::bslstl::IteratorUtil::IterKey_t<INPUT_ITERATOR>], class VALUE = xref:BloombergLP/bslstl/IteratorUtil/IterMapped_t.adoc[BloombergLP::bslstl::IteratorUtil::IterMapped_t<INPUT_ITERATOR>]> requires std::is_invocable_v<HASH, const KEY &> && bsl::IsStdAllocator_v<ALLOCATOR> xref:bsl/unordered_map-02b.adoc[unordered_map<KEY, VALUE, HASH, bsl::equal_to<KEY>, ALLOCATOR>]( INPUT_ITERATOR, INPUT_ITERATOR, bsl::allocator_traits<ALLOCATOR>::size_type, HASH, ALLOCATOR) -> xref:bsl/unordered_map-02b.adoc[unordered_map<KEY, VALUE, HASH, bsl::equal_to<KEY>, ALLOCATOR>]; ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#