1 // (C) Copyright 2008 CodeRage, LLC (turkanis at coderage dot com) 2 // (C) Copyright 2003-2007 Jonathan Turkanis 3 // Distributed under the Boost Software License, Version 1.0. (See accompanying 4 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt.) 5 6 // See http://www.boost.org/libs/iostreams for documentation. 7 8 #ifndef BOOST_IOSTREAMS_DETAIL_TEMPLATE_PARAMS_HPP_INCLUDED 9 10 #include <boost/preprocessor/control/expr_if.hpp> 11 #include <boost/preprocessor/control/if.hpp> 12 #include <boost/preprocessor/repetition/enum_params.hpp> 13 14 #define BOOST_IOSTREAMS_TEMPLATE_PARAMS(arity, param) \ 15 BOOST_PP_EXPR_IF(arity, template<) \ 16 BOOST_PP_ENUM_PARAMS(arity, typename param) \ 17 BOOST_PP_EXPR_IF(arity, >) \ 18 /**/ 19 20 #define BOOST_IOSTREAMS_TEMPLATE_ARGS(arity, param) \ 21 BOOST_PP_EXPR_IF(arity, <) \ 22 BOOST_PP_ENUM_PARAMS(arity, param) \ 23 BOOST_PP_EXPR_IF(arity, >) \ 24 /**/ 25 26 #endif // #ifndef BOOST_IOSTREAMS_DETAIL_BUFFERS_HPP_INCLUDED 27