Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.

Single Pass Iterator Concept

A class or built-in type X models the Single Pass Iterator concept if the following expressions are valid and respect the stated semantics.

Single Pass Iterator Requirements (in addition to Incrementable Iterator and Equality Comparable)
Expression Return Type Assertion/Semantics / Pre-/Post-condition
++r X& pre: r is dereferenceable; post: r is dereferenceable or r is past-the-end
a == b convertible to bool == is an equivalence relation over its domain
a != b convertible to bool !(a == b)
iterator_traversal<X>::type Convertible to single_pass_traversal_tag