<metaname="author"content="David Abrahams, Jeremy Siek, Thomas Witt"/>
<metaname="organization"content="Boost Consulting, Indiana University Open Systems Lab, University of Hanover Institute for Transport Railway Operation and Construction"/>
<td><aclass="first reference external"href="http://www.boost-consulting.com">Boost Consulting</a>, Indiana University <aclass="reference external"href="http://www.osl.iu.edu">Open Systems
Lab</a>, University of Hanover <aclass="last reference external"href="http://www.ive.uni-hannover.de">Institute for Transport
<p>If <ttclass="docutils literal"><spanclass="pre">Reference</span></tt> is <ttclass="docutils literal"><spanclass="pre">use_default</span></tt> then the <ttclass="docutils literal"><spanclass="pre">reference</span></tt> member of
<ttclass="docutils literal"><spanclass="pre">transform_iterator</span></tt> is
Otherwise, <ttclass="docutils literal"><spanclass="pre">reference</span></tt> is <ttclass="docutils literal"><spanclass="pre">Reference</span></tt>.</p>
<p>If <ttclass="docutils literal"><spanclass="pre">Value</span></tt> is <ttclass="docutils literal"><spanclass="pre">use_default</span></tt> then the <ttclass="docutils literal"><spanclass="pre">value_type</span></tt> member is
<ttclass="docutils literal"><spanclass="pre">value_type</span></tt> is <ttclass="docutils literal"><spanclass="pre">Value</span></tt>.</p>
<p>If <ttclass="docutils literal"><spanclass="pre">Iterator</span></tt> models Readable Lvalue Iterator and if <ttclass="docutils literal"><spanclass="pre">Iterator</span></tt>
models Random Access Traversal Iterator, then <ttclass="docutils literal"><spanclass="pre">iterator_category</span></tt> is
convertible to <ttclass="docutils literal"><spanclass="pre">random_access_iterator_tag</span></tt>. Otherwise, if
<ttclass="docutils literal"><spanclass="pre">Iterator</span></tt> models Bidirectional Traversal Iterator, then
<ttclass="docutils literal"><spanclass="pre">iterator_category</span></tt> is convertible to
<ttclass="docutils literal"><spanclass="pre">bidirectional_iterator_tag</span></tt>. Otherwise <ttclass="docutils literal"><spanclass="pre">iterator_category</span></tt> is
convertible to <ttclass="docutils literal"><spanclass="pre">forward_iterator_tag</span></tt>. If <ttclass="docutils literal"><spanclass="pre">Iterator</span></tt> does not
model Readable Lvalue Iterator then <ttclass="docutils literal"><spanclass="pre">iterator_category</span></tt> is
convertible to <ttclass="docutils literal"><spanclass="pre">input_iterator_tag</span></tt>.</p>
<p>The type <ttclass="docutils literal"><spanclass="pre">UnaryFunction</span></tt> must be Assignable, Copy Constructible, and
the expression <ttclass="docutils literal"><spanclass="pre">f(*i)</span></tt> must be valid where <ttclass="docutils literal"><spanclass="pre">f</span></tt> is an object of
type <ttclass="docutils literal"><spanclass="pre">UnaryFunction</span></tt>, <ttclass="docutils literal"><spanclass="pre">i</span></tt> is an object of type <ttclass="docutils literal"><spanclass="pre">Iterator</span></tt>, and
where the type of <ttclass="docutils literal"><spanclass="pre">f(*i)</span></tt> must be
<p><ttclass="docutils literal"><spanclass="pre">transform_iterator<F1,</span><spanclass="pre">X,</span><spanclass="pre">R1,</span><spanclass="pre">V1></span></tt> is interoperable with
<ttclass="docutils literal"><spanclass="pre">transform_iterator<F2,</span><spanclass="pre">Y,</span><spanclass="pre">R2,</span><spanclass="pre">V2></span></tt> if and only if <ttclass="docutils literal"><spanclass="pre">X</span></tt> is
interoperable with <ttclass="docutils literal"><spanclass="pre">Y</span></tt>.</p>
<ttclass="docutils literal"><spanclass="pre">transform_iterator</span></tt>, <ttclass="docutils literal"><spanclass="pre">transform_iterator</span></tt> provides the following
<trclass="field"><thclass="field-name">Returns:</th><tdclass="field-body">An instance of <ttclass="docutils literal"><spanclass="pre">transform_iterator</span></tt> with <ttclass="docutils literal"><spanclass="pre">m_f</span></tt>
and <ttclass="docutils literal"><spanclass="pre">m_iterator</span></tt> default constructed.</td>
<trclass="field"><thclass="field-name">Returns:</th><tdclass="field-body">An instance of <ttclass="docutils literal"><spanclass="pre">transform_iterator</span></tt> with <ttclass="docutils literal"><spanclass="pre">m_f</span></tt>
initialized to <ttclass="docutils literal"><spanclass="pre">f</span></tt> and <ttclass="docutils literal"><spanclass="pre">m_iterator</span></tt> initialized to <ttclass="docutils literal"><spanclass="pre">x</span></tt>.</td>
<trclass="field"><thclass="field-name">Returns:</th><tdclass="field-body">An instance of <ttclass="docutils literal"><spanclass="pre">transform_iterator</span></tt> with <ttclass="docutils literal"><spanclass="pre">m_f</span></tt>
initialized to <ttclass="docutils literal"><spanclass="pre">t.functor()</span></tt> and <ttclass="docutils literal"><spanclass="pre">m_iterator</span></tt> initialized to
<trclass="field"><thclass="field-name">Requires:</th><tdclass="field-body"><ttclass="docutils literal"><spanclass="pre">OtherIterator</span></tt> is implicitly convertible to <ttclass="docutils literal"><spanclass="pre">Iterator</span></tt>.</td>
<trclass="field"><thclass="field-name">Returns:</th><tdclass="field-body">An instance of <ttclass="docutils literal"><spanclass="pre">transform_iterator<UnaryFunction,</span><spanclass="pre">Iterator></span></tt> with <ttclass="docutils literal"><spanclass="pre">m_f</span></tt>
initialized to <ttclass="docutils literal"><spanclass="pre">f</span></tt> and <ttclass="docutils literal"><spanclass="pre">m_iterator</span></tt> initialized to <ttclass="docutils literal"><spanclass="pre">x</span></tt>.</td>
<trclass="field"><thclass="field-name">Returns:</th><tdclass="field-body">An instance of <ttclass="docutils literal"><spanclass="pre">transform_iterator<UnaryFunction,</span><spanclass="pre">Iterator></span></tt> with <ttclass="docutils literal"><spanclass="pre">m_f</span></tt>
default constructed and <ttclass="docutils literal"><spanclass="pre">m_iterator</span></tt> initialized to <ttclass="docutils literal"><spanclass="pre">x</span></tt>.</td>
Generated by <aclass="reference external"href="http://docutils.sourceforge.net/">Docutils</a> from <aclass="reference external"href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.