25
Iterators library
[iterators]
25.3
Iterator requirements
[iterator.requirements]
25.3.7
Common algorithm requirements
[alg.req]
25.3.7.1
General
[alg.req.general]
1
#
There are several additional iterator concepts that are commonly applied to families of algorithms
.
These group together iterator requirements of algorithm families
.
There are three relational concepts that specify how element values are transferred between
indirectly_
readable
and
indirectly_
writable
types:
indirectly_
movable
,
indirectly_
copyable
, and
indirectly_
swappable
.
There are three relational concepts for rearrangements:
permutable
,
mergeable
, and
sortable
.
There is one relational concept for comparing values from different sequences:
indirectly_
comparable
.
2
#
[
Note
1
:
The
ranges
::
less
function object type used in the concepts below imposes constraints on the concepts' arguments in addition to those that appear in the concepts' bodies (
[range.
cmp]
)
.
—
end note
]