A
path::iterator is a constant iterator meeting all the
requirements of a
bidirectional iterator
except that,
for dereferenceable iterators
a and
b
of type
path::iterator
with
a == b,
there is no requirement that
*a and
*b
are bound to the same object
.