GSL.concept: Concepts

These concepts (type predicates) are borrowed from Andrew Sutton's Origin library, the Range proposal, and the ISO WG21 Palo Alto TR. They are likely to be very similar to what will become part of the ISO C++ standard. The notation is that of the ISO WG21 Concepts TS (???ref???).

  • Range
  • String // ???
  • Number // ???
  • Sortable
  • Pointer // A type with *, ->, ==, and default construction (default construction is assumed to set the singular "null" value) see smartptrconcepts
  • Unique_ptr // A type that matches Pointer, has move (not copy), and matches the Lifetime profile criteria for a unique owner type see smartptrconcepts
  • Shared_ptr // A type that matches Pointer, has copy, and matches the Lifetime profile criteria for a shared owner type see smartptrconcepts
  • EqualityComparable // ???Must we suffer CaMelcAse???
  • Convertible
  • Common
  • Boolean
  • Integral
  • SignedIntegral
  • SemiRegular
  • Regular
  • TotallyOrdered
  • Function
  • RegularFunction
  • Predicate
  • Relation
  • ...