1 2All iterators in MPL are classified into three iterator concepts, or 3`categories`, named according to the type of traversal provided. The 4categories are: |Forward Iterator|, |Bidirectional Iterator|, and 5|Random Access Iterator|. The concepts are hierarchical: 6|Random Access Iterator| is a refinement of |Bidirectional Iterator|, 7which, in its turn, is a refinement of |Forward Iterator|. 8 9Because of the inherently immutable nature of the value access, MPL 10iterators escape the problems of the traversal-only categorization 11discussed at length in [n1550]_. 12 13.. [n1550] http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2003/n1550.htm 14 15 16.. copyright:: Copyright � 2001-2009 Aleksey Gurtovoy and David Abrahams 17 Distributed under the Boost Software License, Version 1.0. (See accompanying 18 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 19