53 #ifndef LIB_FORMAT_COUT_H 54 #define LIB_FORMAT_COUT_H 79 template<
typename _CharT,
typename _Traits,
typename X,
typename = enable_StringConversion<X>>
80 inline basic_ostream<_CharT, _Traits>&
81 operator<< (basic_ostream<_CharT, _Traits>& os, X
const& obj)
83 return os << util::StringConv<X>::invoke (obj);
91 template<
typename _CharT,
typename _Traits,
typename X,
typename = enable_StringConversion<X>>
92 inline basic_ostream<_CharT, _Traits>&
93 operator<< (basic_ostream<_CharT, _Traits>& os, X
const* ptr)
98 return os <<
"⟂ «" << lib::meta::typeStr<X>() <<
"»";
failsafe invocation of custom string conversion.