[#BloombergLP-bsltf-TestValuesArrayIterator]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bsltf.adoc[bsltf]::TestValuesArrayIterator
:relfileprefix: ../../
:mrdocs:

This class provide a STL&hyphen;conforming input iterator over values used for testing (see section &lsqb;24&period;2&period;3 input&period;iterators&rsqb;of the C&plus;&plus;11 standard&period; A `TestValuesArrayIterator` provide access to elements of parameterized type `VALUE`&period; An iterator is considered dereferenceable all of the following are satisfied&colon; 1&period; The iterator refers to a valid element (not `end`)&period; 2&period; The iterator has not been dereferenced&period; 3&period; The iterator is not a copy of another iterator of which `operator&plus;&plus;` have been invoked&period; An iterator is comparable if the iterator is not a copy of another iterator of which `operator&plus;&plus;` have been invoked&period;

== Synopsis

Declared in `&lt;bsltf&lowbar;testvaluesarray&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class VALUE&gt;
class TestValuesArrayIterator;
----

== Description

This class is _not_ thread&hyphen;safe&colon; different iterator objects manipulate shared state without synchronization&period; This is rarely a concern for the test scenarios supported by this component&period;

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bsltf/TestValuesArrayIterator/difference_type.adoc[`difference&lowbar;type`] 
| Alias for `ptrdiff&lowbar;t`&period;
| xref:BloombergLP/bsltf/TestValuesArrayIterator/iterator_category.adoc[`iterator&lowbar;category`] 
| Alias for `std&colon;&colon;input&lowbar;iterator&lowbar;tag`&period;
| xref:BloombergLP/bsltf/TestValuesArrayIterator/pointer.adoc[`pointer`] 
| Alias for a pointer to `const VALUE`&period;
| xref:BloombergLP/bsltf/TestValuesArrayIterator/reference.adoc[`reference`] 
| Alias for a reference to `const VALUE`&period;
| xref:BloombergLP/bsltf/TestValuesArrayIterator/value_type.adoc[`value&lowbar;type`] 
| Alias for the iterated `VALUE`&period;
|===


== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bsltf/TestValuesArrayIterator/2constructor-05.adoc[`TestValuesArrayIterator`]         [.small]#[constructor]#
| Constructors
| xref:BloombergLP/bsltf/TestValuesArrayIterator/operator_assign.adoc[`operator&equals;`] 
| Assign to this object the value of the specified `other` object&period; The behavior is undefined unless `other` is valid&period;
| xref:BloombergLP/bsltf/TestValuesArrayIterator/address.adoc[`address`] 
| Return the position (address) referenced by this iterator&period;
| xref:BloombergLP/bsltf/TestValuesArrayIterator/operator_star.adoc[`operator&ast;`] 
| Return the value referred to by this object&period; This object is no longer dereferenceable after a call to this function&period; The behavior is undefined unless this iterator is dereferenceable&period;
| xref:BloombergLP/bsltf/TestValuesArrayIterator/operator_inc-0a.adoc[`operator&plus;&plus;`] 
| Increment operators
| xref:BloombergLP/bsltf/TestValuesArrayIterator/operator_ptr.adoc[`operator&hyphen;&gt;`] 
| Return the address of the element (of the template parameter `VALUE`) at which this iterator is positioned&period; The behavior is undefined unless this iterator is dereferenceable&period;
|===


== Friends

[cols="1,4"]
|===
| Name| Description
| `xref:BloombergLP/bsltf/operator_not_eq-051.adoc[BloombergLP::bsltf::operator!&equals;]`
| Return `true` if the specified sentinel and iterator do _not_ refer to the same element, and `false` otherwise&period;
| `xref:BloombergLP/bsltf/operator_not_eq-069.adoc[BloombergLP::bsltf::operator!&equals;]`
| Return `true` if the specified iterator and sentinel do _not_ refer to the same element, and `false` otherwise&period;
| `xref:BloombergLP/bsltf/operator_eq-0f3.adoc[BloombergLP::bsltf::operator&equals;&equals;]`
| Return `true` if the specified sentinel and iterator refer to the same element, and `false` otherwise&period;
| `xref:BloombergLP/bsltf/operator_eq-0849.adoc[BloombergLP::bsltf::operator&equals;&equals;]`
| Return `true` if the specified iterator and sentinel refer to the same element, and `false` otherwise&period;
| `xref:BloombergLP/bsltf/operator_not_eq-028.adoc[BloombergLP::bsltf::operator!&equals;]`
| Return `true` if the specified iterators do _not_ refer to the same element, and `false` otherwise&period;
| `xref:BloombergLP/bsltf/operator_eq-0a5.adoc[BloombergLP::bsltf::operator&equals;&equals;]`
| Return `true` if the specified iterators refer to the same element, and `false` otherwise&period;
|===

== Non-Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bsltf/operator_not_eq-014.adoc[`operator!&equals;`]
| Return `true` if the specified `lhs` and the specified `rhs` do _not_ refer to the same element, and `false` otherwise&period; The behavior is undefined unless `lhs` and `rhs` are comparable&period;
| xref:BloombergLP/bsltf/operator_not_eq-0b0.adoc[`operator!&equals;`]
| Return `true` if the specified `lhs` and the specified `rhs` do _not_ refer to the same element, and `false` otherwise&period; The behavior is undefined unless `lhs` and `rhs` are comparable&period;
| xref:BloombergLP/bsltf/operator_eq-05f.adoc[`operator&equals;&equals;`]
| Return `true` if the specified `lhs` and the specified `rhs` refer to the same element, and `false` otherwise&period; The behavior is undefined unless `lhs` and `rhs` are comparable&period;
| xref:BloombergLP/bsltf/operator_eq-08b.adoc[`operator&equals;&equals;`]
| Return `true` if the specified `lhs` and the specified `rhs` refer to the same element, and `false` otherwise&period; The behavior is undefined unless `lhs` and `rhs` are comparable&period;
|===


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