1.. Copyright David Abrahams 2006. Distributed under the Boost 2.. Software License, Version 1.0. (See accompanying 3.. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 4 5Single Pass Iterator Concept 6............................ 7 8A class or built-in type ``X`` models the *Single Pass Iterator* 9concept if the following expressions are valid and respect the stated 10semantics. 11 12 13+------------------------------------------------------------------------------------------+ 14|Single Pass Iterator Requirements (in addition to Incrementable Iterator and Equality | 15|Comparable) | 16+--------------------------------+-----------------------------+---------------------------+ 17|Expression |Return Type |Assertion/Semantics / | 18| | |Pre-/Post-condition | 19+================================+=============================+===========================+ 20|``++r`` |``X&`` |pre: ``r`` is | 21| | |dereferenceable; post: | 22| | |``r`` is dereferenceable or| 23| | |``r`` is past-the-end | 24+--------------------------------+-----------------------------+---------------------------+ 25|``a == b`` |convertible to ``bool`` |``==`` is an equivalence | 26| | |relation over its domain | 27+--------------------------------+-----------------------------+---------------------------+ 28|``a != b`` |convertible to ``bool`` |``!(a == b)`` | 29+--------------------------------+-----------------------------+---------------------------+ 30|``iterator_traversal<X>::type`` |Convertible to | | 31| |``single_pass_traversal_tag``| | 32+--------------------------------+-----------------------------+---------------------------+ 33