Type traits & utilities (C++11)
enable_if, conditional, decay, the constructibility traits, type_index, result_of, swappable, pair/tuple cleanup, tuple_cat.
Papers
15 · Oxford 2007 → Batavia 2010Adds enable_if and conditional. Added specification of behavior when B is false.
Adds decay and specifies make_pair/make_tuple with it.
Adds std::begin/std::end-style small utilities to the library ('two of the least crazy ideas').
Minor modifications to the type traits wording. Reworded.
Adds tuple_cat. Changing 'concatenate' to 'tuple_cat'.
Uses explicit conversion operators in the library.
Adds std::type_index so type_info can be used as a map key. Library paper.
Adds more type traits (is_trivially_*, is_nothrow_*, underlying_type, result_of). Library motion 11.
Defines the Swappable requirements.
Simplifies pair, including piecewise_construct. Minutes call it rev 5.2.
Fixes is_constructible and is_explicitly_convertible (NB DE19). Report: 'applied N3047, which resolves DE 19'.
Specifies result_of in terms of INVOKE.
Cleans up the pair and tuple specifications. Printed as '3140' (missing N) in the report.
Adjusts the constructibility and assignability traits.
Deprecates unary_function and binary_function. Editor's note: 'Changed type definition rules in [func.wrap.func] to match previous rules (N3198 would allow cases where only one of first_argument_type and second_argument_type is defined).'.