STL (details)

Core language

Same

template<typename T, typename U>
concept Same

DerivedFrom

template<typename Derived, typename Base>
concept DerivedFrom

ConvertibleTo

template<typename From, typename To>
concept ConvertibleTo

CommonReference

template<typename T, typename U>
concept CommonReference

Common

template<typename T, typename U>
concept Common

Integral

template<typename T>
concept Integral

SignedIntegral

template<typename T>
concept SignedIntegral

UnsignedIntegral

template<typename T>
concept UnsignedIntegral

Assignable

template<typename Lhs, typename Rhs>
concept Assignable

Swappable

template<typename T>
concept Swappable

SwappableWith

template<typename T, typename U>
concept SwappableWith

Destructible

template<typename T>
concept Destructible

Constructible

template<typename T, typename ...Args>
concept Constructible

DefaultConstructible

template<typename T>
concept DefaultConstructible

MoveConstructible

template<typename T>
concept MoveConstructible

CopyConstructible

template<typename T>
concept CopyConstructible

Object

Movable

template<typename T>
concept Movable

Copyable

template<typename T>
concept Copyable

Semiregular

template<typename T>
concept Semiregular

Regular

template<typename T>
concept Regular

Comparison

Boolean

template<typename B>
concept Boolean

__WeaklyEqualityComparableWith

template<typename T, typename U>
concept __WeaklyEqualityComparableWith

EqualityComparable

template<typename T>
concept EqualityComparable

EqualityComparableWith

template<typename T, typename U>
concept EqualityComparableWith

StrictTotallyOrdered

template<typename T>
concept StrictTotallyOrdered

StrictTotallyOrderedWith

template<typename T, typename U>
concept StrictTotallyOrderedWith

Callable

Invocable

template<typename F, typename ...Args>
concept Invocable

RegularInvocable

template<typename F, typename ...Args>
concept RegularInvocable

Predicate

template<typename F, typename ...Args>
concept Predicate

Relation

template<typename R, typename T, typename U>
concept Relation

StrictWeakOrder

template<typename R, typename T, typename U>
concept StrictWeakOrder

Random Number Generator

UniformRandomNumberGenerator

template<class G>
concept UniformRandomNumberGenerator

Iterator

Readable

template<typename In>
concept Readable

Writable

template<typename Out, typename T>
concept Writable

WeaklyIncrementable

template<typename I>
concept WeaklyIncrementable

Incrementable

template<typename I>
concept Incrementable

Iterator

template<typename I>
concept Iterator

Sentinel

template<typename S, typename I>
concept Sentinel

SizedSentinel

template<typename S, typename I>
concept SizedSentinel

InputIterator

template<typename I>
concept InputIterator

OutputIterator

template<typename I, typename T>
concept OutputIterator

ForwardIterator

template<typename I>
concept ForwardIterator

BidirectionalIterator

template<typename I>
concept BidirectionalIterator

RandomAccessIterator

template<typename I>
concept RandomAccessIterator

Indirect Callable

IndirectUnaryInvocable

template<typename F, typename I>
concept IndirectUnaryInvocable

IndirectRegularUnaryInvocable

template<typename F, typename I>
concept IndirectRegularUnaryInvocable

IndirectUnaryPredicate

template<typename F, typename I>
concept IndirectUnaryPredicate

IndirectRelation

template<typename F, typename I1, typename I2 = I1>
concept IndirectRelation

IndirectStrictWeakOrder

template<typename F, typename I1, typename I2 = I1>
concept IndirectStrictWeakOrder

Common algorithm requirements

IndirectlyMovable

template<typename In, typename Out>
concept IndirectlyMovable

IndirectlyMovableStorable

template<typename In, typename Out>
concept IndirectlyMovableStorable

IndirectlyCopyable

template<typename In, typename Out>
concept IndirectlyCopyable

IndirectlyCopyableStorable

template<typename In, typename Out>
concept IndirectlyCopyableStorable

IndirectlySwappable

template<typename I1, typename I2 = I1>
concept IndirectlySwappable

IndirectlyComparable

template<typename I1, typename I2, typename R = equal_to, typename P1 = identity, typename P2 = identity>
concept IndirectlyComparable

Permutable

template<typename I>
concept Permutable

Mergeable

template<typename I1, typename I2, typename Out, typename R = less, typename P1 = identity, typename P2 = identity>
concept Mergeable

Sortable

template<typename I, typename R = less, typename P = identity>
concept Sortable

Range

Range

template<typename T>
concept Range

SizedRange

template<typename T>
concept SizedRange

View

template<typename T>
concept View

BoundedRange

template<typename T>
concept BoundedRange

InputRange

template<typename T>
concept InputRange

OutputRange

template<typename R, typename T>
concept OutputRange

ForwardRange

template<typename T>
concept ForwardRange

BidirectionalRange

template<typename T>
concept BidirectionalRange

RandomAccessRange

template<typename T>
concept RandomAccessRange