1 //Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc.
\r
3 //Distributed under the Boost Software License, Version 1.0. (See accompanying
\r
4 //file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
\r
6 #ifndef UUID_898984B4076411DD973EDFA055D89593
\r
7 #define UUID_898984B4076411DD973EDFA055D89593
\r
8 #if defined(__GNUC__) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
\r
9 #pragma GCC system_header
\r
11 #if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
\r
12 #pragma warning(push,1)
\r
23 template <class T,class CharT,class Traits>
\r
24 char operator<<( std::basic_ostream<CharT,Traits> &, T const & );
\r
26 template <class T,class CharT,class Traits>
\r
28 is_output_streamable_impl
\r
30 static std::basic_ostream<CharT,Traits> & f();
\r
31 static T const & g();
\r
32 enum e { value=1!=(sizeof(f()<<g())) };
\r
36 template <class T, class CharT=char, class Traits=std::char_traits<CharT> >
\r
38 is_output_streamable
\r
40 enum e { value=to_string_detail::is_output_streamable_impl<T,CharT,Traits>::value };
\r
44 #if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
\r
45 #pragma warning(pop)
\r