[#BloombergLP-bslalg-HasStlIterators-0e]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslalg.adoc[bslalg]::HasStlIterators
:relfileprefix: ../../
:mrdocs:

This class detects if the specified class `TYPE` has STL&hyphen;like iterators&period;

== Synopsis

Declared in `&lt;bslalg&lowbar;hasstliterators&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class TYPE&gt;
struct HasStlIterators
    : xref:BloombergLP/bslmf/DetectNestedTrait-00.adoc[bslmf::DetectNestedTrait&lt;TYPE, HasStlIterators&gt;]
----

== Description

If the class `TYPE` provides STL&hyphen;like iterators then `HasStlIterators&lt;TYPE&gt;&colon;&colon;value &equals;&equals; true`, and `HasStlIterators&lt;TYPE&gt;&colon;&colon;value &equals;&equals; false` otherwise&period;

== Base Classes

[cols="1,4"]
|===
| Name| Description
| `xref:BloombergLP/bslmf/DetectNestedTrait-00.adoc[bslmf::DetectNestedTrait&lt;TYPE, HasStlIterators&gt;]`
| Meta&hyphen;function for detecting nested traits&period;
|===

== Specializations

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bslalg/HasStlIterators-04.adoc[`HasStlIterators&lt;bsl::array&lt;TYPE, SIZE&gt;&gt;`] 
| Trait indicating `array` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-009.adoc[`HasStlIterators&lt;bsl::deque&lt;VALUE&lowbar;TYPE, ALLOCATOR&gt;&gt;`] 
| Trait indicating `deque` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-03d.adoc[`HasStlIterators&lt;bsl::list&lt;VALUE, ALLOCATOR&gt;&gt;`] 
| Trait indicating `bsl&colon;&colon;list` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-0d.adoc[`HasStlIterators&lt;bsl::vector&lt;VALUE&lowbar;TYPE, ALLOCATOR&gt;&gt;`] 
| Trait indicating `bsl&colon;&colon;vector` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-06c1.adoc[`HasStlIterators&lt;bdlc::FlatHashSet&lt;KEY, HASH, EQUAL&gt;&gt;`] 
| Trait indicating `bdlc&colon;&colon;FlatHashSet` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-063.adoc[`HasStlIterators&lt;bsl::basic&lowbar;string&lt;CHAR&lowbar;TYPE, CHAR&lowbar;TRAITS, ALLOC&gt;&gt;`] 
| Trait indicating `basic&lowbar;string` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-01.adoc[`HasStlIterators&lt;bsl::multiset&lt;KEY, COMPARATOR, ALLOCATOR&gt;&gt;`] 
| Trait indicating `bsl&colon;&colon;multiset` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-074.adoc[`HasStlIterators&lt;bsl::set&lt;KEY, COMPARATOR, ALLOCATOR&gt;&gt;`] 
| Trait indicating `bsl&colon;&colon;set` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-0b4.adoc[`HasStlIterators&lt;bdlc::FlatHashMap&lt;KEY, VALUE, HASH, EQUAL&gt;&gt;`] 
| Trait indicating `FlatHashMap` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-05f2.adoc[`HasStlIterators&lt;bsl::hash&lowbar;multiset&lt;&lowbar;Value, &lowbar;HashFcn, &lowbar;EqualKey, &lowbar;Alloc&gt;&gt;`] 
| Trait indicating `hash&lowbar;multiset` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-08.adoc[`HasStlIterators&lt;bsl::hash&lowbar;set&lt;&lowbar;Value, &lowbar;HashFcn, &lowbar;EqualKey, &lowbar;Alloc&gt;&gt;`] 
| Trait indicating `hash&lowbar;set` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-05f9.adoc[`HasStlIterators&lt;bsl::map&lt;KEY, VALUE, COMPARATOR, ALLOCATOR&gt;&gt;`] 
| Trait indicating `bsl&colon;&colon;map` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-02.adoc[`HasStlIterators&lt;bsl::multimap&lt;KEY, VALUE, COMPARATOR, ALLOCATOR&gt;&gt;`] 
| Trait indicating `bsl&colon;&colon;multimap` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-0b7.adoc[`HasStlIterators&lt;bsl::unordered&lowbar;multiset&lt;KEY, HASH, EQUAL, ALLOCATOR&gt;&gt;`] 
| Trait indicating `unordered&lowbar;multiset` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-036.adoc[`HasStlIterators&lt;bsl::unordered&lowbar;set&lt;KEY, HASH, EQUAL, ALLOCATOR&gt;&gt;`] 
| Trait indicating `bsl&colon;&colon;unordered&lowbar;set` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-00e.adoc[`HasStlIterators&lt;bsl::hash&lowbar;map&lt;&lowbar;Key, &lowbar;Tp, &lowbar;HashFcn, &lowbar;EqualKey, &lowbar;Alloc&gt;&gt;`] 
| Trait indicating `hash&lowbar;map` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-06c8.adoc[`HasStlIterators&lt;bsl::hash&lowbar;multimap&lt;&lowbar;Key, &lowbar;Tp, &lowbar;HashFcn, &lowbar;EqualKey, &lowbar;Alloc&gt;&gt;`] 
| Trait indicating `hash&lowbar;multimap` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-0a.adoc[`HasStlIterators&lt;bsl::unordered&lowbar;map&lt;KEY, VALUE, HASH, EQUAL, ALLOCATOR&gt;&gt;`] 
| Trait indicating `unordered&lowbar;map` provides STL iterators&period;
| xref:BloombergLP/bslalg/HasStlIterators-07e.adoc[`HasStlIterators&lt;bsl::unordered&lowbar;multimap&lt;KEY, VALUE, HASH, EQUAL, ALLOCATOR&gt;&gt;`] 
| Trait indicating `unordered&lowbar;multimap` provides STL iterators&period;
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
