Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-12-16 09:45:25

0001 //Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc.
0002 
0003 //Distributed under the Boost Software License, Version 1.0. (See accompanying
0004 //file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0005 
0006 #ifndef BOOST_EXCEPTION_898984B4076411DD973EDFA055D89593
0007 #define BOOST_EXCEPTION_898984B4076411DD973EDFA055D89593
0008 
0009 #include <ostream>
0010 
0011 #ifndef BOOST_EXCEPTION_ENABLE_WARNINGS
0012 #if defined(__GNUC__) && __GNUC__*100+__GNUC_MINOR__>301
0013 #pragma GCC system_header
0014 #endif
0015 #ifdef __clang__
0016 #pragma clang system_header
0017 #endif
0018 #ifdef _MSC_VER
0019 #pragma warning(push,1)
0020 #endif
0021 #endif
0022 
0023 namespace
0024 boost
0025     {
0026     namespace
0027     to_string_detail
0028         {
0029         struct
0030         partial_ordering_helper1
0031             {
0032             template <class CharT,class Traits>
0033             partial_ordering_helper1( std::basic_ostream<CharT,Traits> & );
0034             };
0035 
0036         struct
0037         partial_ordering_helper2
0038             {
0039             template <class T>
0040             partial_ordering_helper2( T const & );
0041             };
0042 
0043         char operator<<( partial_ordering_helper1, partial_ordering_helper2 );
0044 
0045         template <class T,class CharT,class Traits>
0046         struct
0047         is_output_streamable_impl
0048             {
0049             static std::basic_ostream<CharT,Traits> & f();
0050             static T const & g();
0051             enum e { value=1!=(sizeof(f()<<g())) };
0052             };
0053         }
0054 
0055     template <class T, class CharT=char, class Traits=std::char_traits<CharT> >
0056     struct
0057     is_output_streamable
0058         {
0059         enum e { value=to_string_detail::is_output_streamable_impl<T,CharT,Traits>::value };
0060         };
0061     }
0062 
0063 #if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
0064 #pragma warning(pop)
0065 #endif
0066 #endif