6.8 KiB
[concepts.syn]
18 Concepts library [concepts]
18.3 Header synopsis [concepts.syn]
// all freestandingnamespace std {// [concepts.lang], language-related concepts// [concept.same], concept same_astemplate<class T, class U>concept same_as = see below; // [concept.derived], concept derived_fromtemplate<class Derived, class Base>concept derived_from = see below; // [concept.convertible], concept convertible_totemplate<class From, class To>concept convertible_to = see below; // [concept.commonref], concept common_reference_withtemplate<class T, class U>concept common_reference_with = see below; // [concept.common], concept common_withtemplate<class T, class U>concept common_with = see below; // [concepts.arithmetic], arithmetic conceptstemplateconcept integral = see below; templateconcept signed_integral = see below; templateconcept unsigned_integral = see below; templateconcept floating_point = see below; // [concept.assignable], concept assignable_fromtemplate<class LHS, class RHS>concept assignable_from = see below; // [concept.swappable], concept swappablenamespace ranges {inline namespace unspecified {inline constexpr unspecified swap = unspecified; }}templateconcept swappable = see below; template<class T, class U>concept swappable_with = see below; // [concept.destructible], concept destructibletemplateconcept destructible = see below; // [concept.constructible], concept constructible_fromtemplate<class T, class... Args>concept constructible_from = see below; // [concept.default.init], concept default_initializabletemplateconcept default_initializable = see below; // [concept.moveconstructible], concept move_constructibletemplateconcept move_constructible = see below; // [concept.copyconstructible], concept copy_constructibletemplateconcept copy_constructible = see below; // [concepts.compare], comparison concepts// [concept.equalitycomparable], concept equality_comparabletemplateconcept equality_comparable = see below; template<class T, class U>concept equality_comparable_with = see below; // [concept.totallyordered], concept totally_orderedtemplateconcept totally_ordered = see below; template<class T, class U>concept totally_ordered_with = see below; // [concepts.object], object conceptstemplateconcept movable = see below; templateconcept copyable = see below; templateconcept semiregular = see below; templateconcept regular = see below; // [concepts.callable], callable concepts// [concept.invocable], concept invocabletemplate<class F, class... Args>concept invocable = see below; // [concept.regularinvocable], concept regular_invocabletemplate<class F, class... Args>concept regular_invocable = see below; // [concept.predicate], concept predicatetemplate<class F, class... Args>concept predicate = see below; // [concept.relation], concept relationtemplate<class R, class T, class U>concept relation = see below; // [concept.equiv], concept equivalence_relationtemplate<class R, class T, class U>concept equivalence_relation = see below; // [concept.strictweakorder], concept strict_weak_ordertemplate<class R, class T, class U>concept strict_weak_order = see below;}