]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
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 | ||
5 | Readable Iterator Concept | |
6 | ......................... | |
7 | ||
8 | A class or built-in type ``X`` models the *Readable Iterator* concept | |
9 | for value type ``T`` if, in addition to ``X`` being Assignable and | |
10 | Copy Constructible, the following expressions are valid and respect | |
11 | the stated semantics. ``U`` is the type of any specified member of | |
12 | type ``T``. | |
13 | ||
14 | +-----------------------------------------------------------------------------------------------------------------------------+ | |
15 | |Readable Iterator Requirements (in addition to Assignable and Copy Constructible) | | |
16 | +-----------------------------------+------------------------+----------------------------------------------------------------+ | |
17 | |Expression |Return Type |Note/Precondition | | |
18 | +===================================+========================+================================================================+ | |
19 | |``iterator_traits<X>::value_type`` |``T`` |Any non-reference, | | |
20 | | | |non-cv-qualified type | | |
21 | +-----------------------------------+------------------------+----------------------------------------------------------------+ | |
22 | |``*a`` | Convertible to ``T`` |pre: ``a`` is dereferenceable. If ``a == b`` then ``*a`` | | |
23 | | | | is equivalent to ``*b``. | | |
24 | +-----------------------------------+------------------------+----------------------------------------------------------------+ | |
25 | |``a->m`` |``U&`` |pre: ``pre: (*a).m`` is well-defined. Equivalent to ``(*a).m``. | | |
26 | +-----------------------------------+------------------------+----------------------------------------------------------------+ |