]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/iterator/doc/quickbook/concept_checking.qbk
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / boost / libs / iterator / doc / quickbook / concept_checking.qbk
1 [section:concept_checking Concept Checking]
2
3 The iterator concept checking classes provide a mechanism for a
4 template to report better error messages when a user instantiates the
5 template with a type that does not meet the requirements of the
6 template. For an introduction to using concept checking classes, see
7 the documentation for the boost::concept_check library.
8
9 [h2 `iterator_concepts.hpp` Synopsis]
10
11 namespace boost_concepts {
12
13 // Iterator Access Concepts
14
15 template <typename Iterator>
16 class ReadableIteratorConcept;
17
18 template <
19 typename Iterator
20 , typename ValueType = std::iterator_traits<Iterator>::value_type
21 >
22 class WritableIteratorConcept;
23
24 template <typename Iterator>
25 class SwappableIteratorConcept;
26
27 template <typename Iterator>
28 class LvalueIteratorConcept;
29
30 // Iterator Traversal Concepts
31
32 template <typename Iterator>
33 class IncrementableIteratorConcept;
34
35 template <typename Iterator>
36 class SinglePassIteratorConcept;
37
38 template <typename Iterator>
39 class ForwardTraversalConcept;
40
41 template <typename Iterator>
42 class BidirectionalTraversalConcept;
43
44 template <typename Iterator>
45 class RandomAccessTraversalConcept;
46
47 // Interoperability
48
49 template <typename Iterator, typename ConstIterator>
50 class InteroperableIteratorConcept;
51
52 }
53
54 [endsect]