[#bsl-set-0a] = xref:bsl.adoc[bsl]::xref:bsl/set-0d.adoc[set<KEY, COMPARATOR, ALLOCATOR>] :relfileprefix: ../ :mrdocs: Deduce `KEY`, `COMPARATOR`, and `ALLOCATOR` from an iterator‐range constructor. == Synopsis Declared in `<bslstl_set.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class INPUT_ITERATOR, class KEY = bsl::iterator_traits<INPUT_ITERATOR>::value_type, class COMPARATOR = std::less<KEY>, class ALLOCATOR = xref:bsl/allocator-0df.adoc[bsl::allocator<KEY>]> requires !bsl::IsStdAllocator_v<COMPARATOR> && bsl::IsStdAllocator_v<ALLOCATOR> xref:bsl/set-0d.adoc[set<KEY, COMPARATOR, ALLOCATOR>]( INPUT_ITERATOR, INPUT_ITERATOR, COMPARATOR, ALLOCATOR) -> xref:bsl/set-0d.adoc[set<KEY, COMPARATOR, ALLOCATOR>]; ---- == Description This guide does not participate unless the supplied (or defaulted) `ALLOCATOR` meets the requirements of a standard allocator. [.small]#Created with https://www.mrdocs.com[MrDocs]#