libstdc++: Concepts

libstdc++

Concepts
Here is a list of all documented concepts with brief descriptions:
[detail level 123]

N std | ISO C++ entities toplevel namespace is std
Nranges |
R bidirectional_range | A range for which ranges::begin returns a bidirectional iterator
R borrowed_range | [range.range] The borrowed_range concept
R common_range | A range for which ranges::begin and ranges::end return the same type
R contiguous_range | A range for which ranges::begin returns a contiguous iterator
R forward_range | A range for which ranges::begin returns a forward iterator
R input_range | A range for which ranges::begin returns an input iterator
R output_range | A range for which ranges::begin returns an output iterator
R random_access_range | A range for which ranges::begin returns a random access iterator
R range | [range.range] The range concept
R sized_range | [range.sized] The sized_range concept
R view | [range.view] The ranges::view concept
R viewable_range | A range which can be safely converted to a view
Nsimd |
R __vec_builtin |
R __vec_builtin_of |
R assignable_from | [concept.assignable], concept assignable_from
R common_reference_with | [concept.commonref], concept common_reference_with
R common_with | [concept.common], concept common_with
R constructible_from | [concept.constructible], concept constructible_from
R convertible_to | [concept.convertible], concept convertible_to
R copy_constructible | [concept.copyconstructible], concept copy_constructible
R default_initializable | [concept.defaultinitializable], concept default_initializable
R derived_from | [concept.derived], concept derived_from
R destructible | [concept.destructible], concept destructible
R equivalence_relation | [concept.equiv], concept equivalence_relation
R indirectly_comparable | [alg.req.ind.cmp], concept indirectly_comparable
R indirectly_copyable | [alg.req.ind.copy], concept indirectly_copyable
R indirectly_movable | [alg.req.ind.move], concept indirectly_movable
R indirectly_readable | Requirements for types that are readable by applying operator*
R indirectly_swappable | [alg.req.ind.swap], concept indirectly_swappable
R indirectly_writable | Requirements for writing a value into an iterator's referenced object
R invocable | [concept.invocable], concept invocable
R mergeable | [alg.req.mergeable], concept mergeable
R move_constructible | [concept.moveconstructible], concept move_constructible
R permutable | [alg.req.permutable], concept permutable
R predicate | [concept.predicate], concept predicate
R regular_invocable | [concept.regularinvocable], concept regular_invocable
R relation | [concept.relation], concept relation
R same_as | [concept.same], concept same_as
R sortable | [alg.req.sortable], concept sortable
R strict_weak_order | [concept.strictweakorder], concept strict_weak_order
R uniform_random_bit_generator | Requirements for a uniform random bit generator
R weakly_incrementable | Requirements on types that can be incremented with ++