mirror of
https://github.com/boostorg/iterator.git
synced 2025-07-30 04:47:20 +02:00
further edits to filter_iterator's iterator_category
[SVN r21661]
This commit is contained in:
@ -1859,11 +1859,15 @@ private:
|
|||||||
Iterator m_end; // exposition only
|
Iterator m_end; // exposition only
|
||||||
};
|
};
|
||||||
</pre>
|
</pre>
|
||||||
<p>If the <tt class="literal"><span class="pre">Iterator</span></tt> argument models Readable Lvalue Iterator and
|
<p>If <tt class="literal"><span class="pre">iterator_traits<Iterator>::reference</span></tt> is a reference to
|
||||||
Forward Traversal Iterator then the <tt class="literal"><span class="pre">iterator_category</span></tt> member is a
|
<tt class="literal"><span class="pre">iterator_traits<Iterator>::value_type</span></tt> and
|
||||||
type convertible to <tt class="literal"><span class="pre">std::forward_iterator_tag</span></tt>. Otherwise
|
<tt class="literal"><span class="pre">iterator_traversal<Iterator>::type</span></tt> is convertible to
|
||||||
|
<tt class="literal"><span class="pre">forward_traversal_tag</span></tt> then the <tt class="literal"><span class="pre">iterator_category</span></tt> member is a
|
||||||
|
type convertible to <tt class="literal"><span class="pre">forward_iterator_tag</span></tt>. Otherwise
|
||||||
<tt class="literal"><span class="pre">iterator_category</span></tt> is a type convertible to
|
<tt class="literal"><span class="pre">iterator_category</span></tt> is a type convertible to
|
||||||
<tt class="literal"><span class="pre">std::input_iterator_tag</span></tt>.</p>
|
<tt class="literal"><span class="pre">input_iterator_tag</span></tt>.</p>
|
||||||
|
<!-- In that last case, I think the implementation produces a tag
|
||||||
|
convertible to both input and output, which seems wrong. -JGS -->
|
||||||
</div>
|
</div>
|
||||||
<div class="section" id="filter-iterator-requirements">
|
<div class="section" id="filter-iterator-requirements">
|
||||||
<h4><a class="toc-backref" href="#id58" name="filter-iterator-requirements"><tt class="literal"><span class="pre">filter_iterator</span></tt> requirements</a></h4>
|
<h4><a class="toc-backref" href="#id58" name="filter-iterator-requirements"><tt class="literal"><span class="pre">filter_iterator</span></tt> requirements</a></h4>
|
||||||
@ -2308,7 +2312,7 @@ LocalWords: OtherIncrementable Coplien -->
|
|||||||
<hr class="footer"/>
|
<hr class="footer"/>
|
||||||
<div class="footer">
|
<div class="footer">
|
||||||
<a class="reference" href="facade-and-adaptor.rst">View document source</a>.
|
<a class="reference" href="facade-and-adaptor.rst">View document source</a>.
|
||||||
Generated on: 2004-01-13 03:17 UTC.
|
Generated on: 2004-01-13 05:14 UTC.
|
||||||
Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
|
Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
@ -91,11 +91,15 @@ private:
|
|||||||
Iterator m_end; // exposition only
|
Iterator m_end; // exposition only
|
||||||
};
|
};
|
||||||
</pre>
|
</pre>
|
||||||
<p>If the <tt class="literal"><span class="pre">Iterator</span></tt> argument models Readable Lvalue Iterator and
|
<p>If <tt class="literal"><span class="pre">iterator_traits<Iterator>::reference</span></tt> is a reference to
|
||||||
Forward Traversal Iterator then the <tt class="literal"><span class="pre">iterator_category</span></tt> member is a
|
<tt class="literal"><span class="pre">iterator_traits<Iterator>::value_type</span></tt> and
|
||||||
type convertible to <tt class="literal"><span class="pre">std::forward_iterator_tag</span></tt>. Otherwise
|
<tt class="literal"><span class="pre">iterator_traversal<Iterator>::type</span></tt> is convertible to
|
||||||
|
<tt class="literal"><span class="pre">forward_traversal_tag</span></tt> then the <tt class="literal"><span class="pre">iterator_category</span></tt> member is a
|
||||||
|
type convertible to <tt class="literal"><span class="pre">forward_iterator_tag</span></tt>. Otherwise
|
||||||
<tt class="literal"><span class="pre">iterator_category</span></tt> is a type convertible to
|
<tt class="literal"><span class="pre">iterator_category</span></tt> is a type convertible to
|
||||||
<tt class="literal"><span class="pre">std::input_iterator_tag</span></tt>.</p>
|
<tt class="literal"><span class="pre">input_iterator_tag</span></tt>.</p>
|
||||||
|
<!-- In that last case, I think the implementation produces a tag
|
||||||
|
convertible to both input and output, which seems wrong. -JGS -->
|
||||||
</div>
|
</div>
|
||||||
<div class="section" id="filter-iterator-requirements">
|
<div class="section" id="filter-iterator-requirements">
|
||||||
<h1><a class="toc-backref" href="#id3" name="filter-iterator-requirements"><tt class="literal"><span class="pre">filter_iterator</span></tt> requirements</a></h1>
|
<h1><a class="toc-backref" href="#id3" name="filter-iterator-requirements"><tt class="literal"><span class="pre">filter_iterator</span></tt> requirements</a></h1>
|
||||||
@ -386,7 +390,7 @@ int main()
|
|||||||
<hr class="footer"/>
|
<hr class="footer"/>
|
||||||
<div class="footer">
|
<div class="footer">
|
||||||
<a class="reference" href="filter_iterator.rst">View document source</a>.
|
<a class="reference" href="filter_iterator.rst">View document source</a>.
|
||||||
Generated on: 2004-01-13 03:17 UTC.
|
Generated on: 2004-01-13 05:14 UTC.
|
||||||
Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
|
Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
@ -30,12 +30,16 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
If the ``Iterator`` argument models Readable Lvalue Iterator and
|
If ``iterator_traits<Iterator>::reference`` is a reference to
|
||||||
Forward Traversal Iterator then the ``iterator_category`` member is a
|
``iterator_traits<Iterator>::value_type`` and
|
||||||
type convertible to ``std::forward_iterator_tag``. Otherwise
|
``iterator_traversal<Iterator>::type`` is convertible to
|
||||||
|
``forward_traversal_tag`` then the ``iterator_category`` member is a
|
||||||
|
type convertible to ``forward_iterator_tag``. Otherwise
|
||||||
``iterator_category`` is a type convertible to
|
``iterator_category`` is a type convertible to
|
||||||
``std::input_iterator_tag``.
|
``input_iterator_tag``.
|
||||||
|
|
||||||
|
.. In that last case, I think the implementation produces a tag
|
||||||
|
convertible to both input and output, which seems wrong. -JGS
|
||||||
|
|
||||||
|
|
||||||
``filter_iterator`` requirements
|
``filter_iterator`` requirements
|
||||||
|
Reference in New Issue
Block a user