...one of the most highly
regarded and expertly designed C++ library projects in the
world. — Herb Sutter and Andrei
Fusion iterators are divided into different traversal categories. Forward Iterator is the most basic concept. Bidirectional Iterator is a refinement of Forward Iterator. Random Access Iterator is a refinement of Bidirectional Iterator. Associative Iterator is a refinement of Forward Iterator, Bidirectional Iterator or Random Access Iterator.