diff --git a/reference.htm b/reference.htm index 212d568..48d858f 100644 --- a/reference.htm +++ b/reference.htm @@ -56,110 +56,209 @@
- template <class T> struct Integer_concept; // Is T a built-in integer type? - template <class T> struct SignedIntegerConcept; // Is T a built-in signed integer type? - template <class X, class Y> struct ConvertibleConcept; // Is X convertible to Y? - template <class T> struct AssignableConcept; // Standard ref 23.1 - template <class T> struct SGIAssignableConcept; - template <class T> struct DefaultConstructibleConcept; - template <class T> struct CopyConstructibleConcept; // Standard ref 20.1.3 - template <class T> struct EqualityComparableConcept; // Standard ref 20.1.1 - template <class T> struct LessThanComparableConcept; // Standard ref 20.1.2 - template <class T> struct ComparableConcept; // The SGI STL LessThanComparable concept + template <class T> + struct Integer_concept; // Is T a built-in integer type? + + template <class T> + struct SignedIntegerConcept; // Is T a built-in signed integer type? + + template <class X, class Y> + struct ConvertibleConcept; // Is X convertible to Y? + + template <class T> + struct AssignableConcept; // Standard ref 23.1 + + template <class T> + struct SGIAssignableConcept; + + template <class T> + struct DefaultConstructibleConcept; + + template <class T> + struct CopyConstructibleConcept; // Standard ref 20.1.3 + + template <class T> + struct EqualityComparableConcept; // Standard ref 20.1.1 + + template <class T> + struct LessThanComparableConcept; // Standard ref 20.1.2 + + template <class T> + struct ComparableConcept; // The SGI STL LessThanComparable concept
- template <class Iter> struct TrivialIteratorConcept; - template <class Iter> struct Mutable_TrivialIteratorConcept; - template <class Iter> struct InputIteratorConcept; // Standard ref 24.1.1 Table 72 - template <class Iter, class T> struct OutputIteratorConcept; // Standard ref 24.1.2 Table 73 - template <class Iter> struct ForwardIteratorConcept; // Standard ref 24.1.3 Table 74 - template <class Iter> struct Mutable_ForwardIteratorConcept; - template <class Iter> struct BidirectionalIteratorConcept; // Standard ref 24.1.4 Table 75 - template <class Iter> struct Mutable_BidirectionalIteratorConcept; - template <class Iter> struct RandomAccessIteratorConcept; // Standard ref 24.1.5 Table 76 - template <class Iter> struct Mutable_RandomAccessIteratorConcept; + template <class Iter> + struct TrivialIteratorConcept; + + template <class Iter> + struct Mutable_TrivialIteratorConcept; + + template <class Iter> + struct InputIteratorConcept; // Standard ref 24.1.1 Table 72 + + template <class Iter, class T> + struct OutputIteratorConcept; // Standard ref 24.1.2 Table 73 + + template <class Iter> + struct ForwardIteratorConcept; // Standard ref 24.1.3 Table 74 + + template <class Iter> + struct Mutable_ForwardIteratorConcept; + + template <class Iter> + struct BidirectionalIteratorConcept; // Standard ref 24.1.4 Table 75 + + template <class Iter> + struct Mutable_BidirectionalIteratorConcept; + + template <class Iter> + struct RandomAccessIteratorConcept; // Standard ref 24.1.5 Table 76 + + template <class Iter> + struct Mutable_RandomAccessIteratorConcept;
- template <class Func, class Return> struct GeneratorConcept; - template <class Func, class Return, class Arg> struct UnaryFunctionConcept; - template <class Func, class Return, class First, class Second> struct BinaryFunctionConcept; - template <class Func, class Arg> struct UnaryPredicateConcept; - template <class Func, class First, class Second> struct BinaryPredicateConcept; - template <class Func, class First, class Second> struct Const_BinaryPredicateConcept {; + template <class Func, class Return> + struct GeneratorConcept; + + template <class Func, class Return, class Arg> + struct UnaryFunctionConcept; + + template <class Func, class Return, class First, class Second> + struct BinaryFunctionConcept; + + template <class Func, class Arg> + struct UnaryPredicateConcept; + + template <class Func, class First, class Second> + struct BinaryPredicateConcept; + + template <class Func, class First, class Second> + struct Const_BinaryPredicateConcept;
- template <class C> struct ContainerConcept; // Standard ref 23.1 Table 65 - template <class C> struct Mutable_ContainerConcept; + template <class C> + struct ContainerConcept; // Standard ref 23.1 Table 65 - template <class C> struct ForwardContainerConcept; - template <class C> struct Mutable_ForwardContainerConcept; + template <class C> + struct Mutable_ContainerConcept; - template <class C> struct ReversibleContainerConcept; // Standard ref 23.1 Table 66 - template <class C> struct Mutable_ReversibleContainerConcept; + template <class C> + struct ForwardContainerConcept; - template <class C> struct RandomAccessContainerConcept; - template <class C> struct Mutable_RandomAccessContainerConcept; + template <class C> + struct Mutable_ForwardContainerConcept; - template <class C> struct SequenceConcept; // Standard ref 23.1.1 - template <class C> struct FrontInsertionSequenceConcept; - template <class C> struct BackInsertionSequenceConcept; + template <class C> + struct ReversibleContainerConcept; // Standard ref 23.1 Table 66 - template <class C> struct AssociativeContainerConcept; // Standard ref 23.1.2 Table 69 - template <class C> struct UniqueAssociativeContainerConcept; - template <class C> struct MultipleAssociativeContainerConcept; - template <class C> struct SimpleAssociativeContainerConcept; - template <class C> struct PairAssociativeContainerConcept; - template <class C> struct SortedAssociativeContainerConcept; + template <class C> + struct Mutable_ReversibleContainerConcept; + + template <class C> + struct RandomAccessContainerConcept; + + template <class C> + struct Mutable_RandomAccessContainerConcept; + + template <class C> + struct SequenceConcept; // Standard ref 23.1.1 + + template <class C> + struct FrontInsertionSequenceConcept; + + template <class C> + struct BackInsertionSequenceConcept; + + template <class C> + struct AssociativeContainerConcept; // Standard ref 23.1.2 Table 69 + + template <class C> + struct UniqueAssociativeContainerConcept; + + template <class C> + struct MultipleAssociativeContainerConcept; + + template <class C> + struct SimpleAssociativeContainerConcept; + + template <class C> + struct PairAssociativeContainerConcept; + + template <class C> + struct SortedAssociativeContainerConcept;
- template <class T = int> class null_archetype; // A type that models no concepts. - template <class Base = null_archetype> class default_constructible_archetype; - template <class Base = null_archetype> class assignable_archetype; - template <class Base = null_archetype> class copy_constructible_archetype; - template <class Base = null_archetype> class equality_comparable_archetype; - template <class T, class Base = null_archetype> class convertible_to_archetype; + template <class T = int> + class null_archetype; // A type that models no concepts. + + template <class Base = null_archetype> + class default_constructible_archetype; + + template <class Base = null_archetype> + class assignable_archetype; + + template <class Base = null_archetype> + class copy_constructible_archetype; + + template <class Base = null_archetype> + class equality_comparable_archetype; + + template <class T, class Base = null_archetype> + class convertible_to_archetype;
- template <class ValueType> class trivial_iterator_archetype; - template <class ValueType> class mutable_trivial_iterator_archetype; - template <class ValueType> class input_iterator_archetype; - template <class ValueType> class forward_iterator_archetype; - template <class ValueType> class bidirectional_iterator_archetype; - template <class ValueType> class random_access_iterator_archetype; + template <class ValueType> + class trivial_iterator_archetype; + + template <class ValueType> + class mutable_trivial_iterator_archetype; + + template <class ValueType> + class input_iterator_archetype; + + template <class ValueType> + class forward_iterator_archetype; + + template <class ValueType> + class bidirectional_iterator_archetype; + + template <class ValueType> + class random_access_iterator_archetype; +
- template <class Arg, class Return> class unary_function_archetype; - template <class Arg1, class Arg2, class Return> class binary_function_archetype; - template <class Arg> class predicate_archetype; - template <class Arg1, class Arg2> class binary_predicate_archetype; + template <class Arg, class Return> + class unary_function_archetype; + + template <class Arg1, class Arg2, class Return> + class binary_function_archetype; + + template <class Arg> + class predicate_archetype; + + template <class Arg1, class Arg2> + class binary_predicate_archetype;