Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 09:35:28

0001 //-----------------------------------------------------------------------------
0002 // boost detail/templated_streams.hpp header file
0003 // See http://www.boost.org for updates, documentation, and revision history.
0004 //-----------------------------------------------------------------------------
0005 //
0006 // Copyright (c) 2003
0007 // Eric Friedman
0008 //
0009 // Distributed under the Boost Software License, Version 1.0. (See
0010 // accompanying file LICENSE_1_0.txt or copy at
0011 // http://www.boost.org/LICENSE_1_0.txt)
0012 
0013 #ifndef BOOST_DETAIL_TEMPLATED_STREAMS_HPP
0014 #define BOOST_DETAIL_TEMPLATED_STREAMS_HPP
0015 
0016 #include "boost/config.hpp"
0017 
0018 ///////////////////////////////////////////////////////////////////////////////
0019 // (detail) BOOST_TEMPLATED_STREAM_* macros
0020 //
0021 // Provides workaround platforms without stream class templates.
0022 //
0023 
0024 #if !defined(BOOST_NO_STD_LOCALE)
0025 
0026 #define BOOST_TEMPLATED_STREAM_TEMPLATE(E,T) \
0027     template < typename E , typename T >
0028 
0029 #define BOOST_TEMPLATED_STREAM_TEMPLATE_ALLOC(E,T,A) \
0030     template < typename E , typename T , typename A >
0031 
0032 #define BOOST_TEMPLATED_STREAM_ARGS(E,T) \
0033     typename E , typename T 
0034 
0035 #define BOOST_TEMPLATED_STREAM_ARGS_ALLOC(E,T,A) \
0036     typename E , typename T , typename A 
0037 
0038 #define BOOST_TEMPLATED_STREAM_COMMA        ,
0039 
0040 #define BOOST_TEMPLATED_STREAM_ELEM(E)      E
0041 #define BOOST_TEMPLATED_STREAM_TRAITS(T)    T
0042 #define BOOST_TEMPLATED_STREAM_ALLOC(A)     A
0043 
0044 #define BOOST_TEMPLATED_STREAM(X,E,T) \
0045     BOOST_JOIN(std::basic_,X)< E , T >
0046 
0047 #define BOOST_TEMPLATED_STREAM_WITH_ALLOC(X,E,T,A) \
0048     BOOST_JOIN(std::basic_,X)< E , T , A >
0049 
0050 #else // defined(BOOST_NO_STD_LOCALE)
0051 
0052 #define BOOST_TEMPLATED_STREAM_TEMPLATE(E,T) /**/
0053 
0054 #define BOOST_TEMPLATED_STREAM_TEMPLATE_ALLOC(E,T,A) /**/
0055 
0056 #define BOOST_TEMPLATED_STREAM_ARGS(E,T) /**/
0057 
0058 #define BOOST_TEMPLATED_STREAM_ARGS_ALLOC(E,T,A) /**/
0059 
0060 #define BOOST_TEMPLATED_STREAM_COMMA        /**/
0061 
0062 #define BOOST_TEMPLATED_STREAM_ELEM(E)      char
0063 #define BOOST_TEMPLATED_STREAM_TRAITS(T)    std::char_traits<char>
0064 #define BOOST_TEMPLATED_STREAM_ALLOC(A)     std::allocator<char>
0065 
0066 #define BOOST_TEMPLATED_STREAM(X,E,T) \
0067     std::X
0068 
0069 #define BOOST_TEMPLATED_STREAM_WITH_ALLOC(X,E,T,A) \
0070     std::X
0071 
0072 #endif // BOOST_NO_STD_LOCALE
0073 
0074 #endif // BOOST_DETAIL_TEMPLATED_STREAMS_HPP