23 General utilities library [utilities]

23.14 Function objects [function.objects]

23.14.11 Function object binders [func.bind]

23.14.11.1 Class template is_Β­bind_Β­expression [func.bind.isbind]

namespace std {
  template<class T> struct is_bind_expression;  // see below
}

The class template is_Β­bind_Β­expression can be used to detect function objects generated by bind. The function template bind uses is_Β­bind_Β­expression to detect subexpressions.

Instantiations of the is_Β­bind_Β­expression template shall meet the UnaryTypeTrait requirements. The implementation shall provide a definition that has a base characteristic of true_Β­type if T is a type returned from bind, otherwise it shall have a base characteristic of false_Β­type. A program may specialize this template for a user-defined type T to have a base characteristic of true_Β­type to indicate that T should be treated as a subexpression in a bind call.