added requirement to Forward Traversal Iterator concerning a == b iff *a == *b

[SVN r23513]
This commit is contained in:
Jeremy Siek
2004-07-13 20:19:56 +00:00
parent aa62f4f9c7
commit 254186d6bd

View File

@ -521,7 +521,12 @@ Forward Traversal Iterators [lib.forward.traversal.iterators]
A class or built-in type ``X`` models the *Forward Traversal Iterator* A class or built-in type ``X`` models the *Forward Traversal Iterator*
concept if, in addition to ``X`` meeting the requirements of Default concept if, in addition to ``X`` meeting the requirements of Default
Constructible and Single Pass Iterator, the following expressions are Constructible and Single Pass Iterator, the following expressions are
valid and respect the stated semantics. valid and respect the stated semantics. Also, if ``X`` is a *Readable
Iterator* with ``a`` and ``b`` dereferenceable, then ``a == b`` if and
only if ``*a`` and ``*b`` are the same object. If ``X`` is a
*Writable Iterator*, then ``a == b`` if and only if ``*a = o`` and
``*b = o`` write ``o`` to the same location.
+--------------------------------------------------------------------------------------------------------+ +--------------------------------------------------------------------------------------------------------+
|Forward Traversal Iterator Requirements (in addition to Default Constructible and Single Pass Iterator) | |Forward Traversal Iterator Requirements (in addition to Default Constructible and Single Pass Iterator) |
@ -543,6 +548,8 @@ valid and respect the stated semantics.
| |``forward_traversal_tag`` | | | |``forward_traversal_tag`` | |
+---------------------------------------+-----------------------------------+----------------------------+ +---------------------------------------+-----------------------------------+----------------------------+
.. TR1: forward_traversal_iterator_tag changed to .. TR1: forward_traversal_iterator_tag changed to
forward_traversal_tag for consistency forward_traversal_tag for consistency