The template class result_of defines a nested typedef named type, that is the return type of the function type in result_of's template parameter.
Namespace std::tr1{ template <class Sig> class result_of { public: typedef /* implementation details */ type; }; }