Imported Upstream version 1.57.0
[platform/upstream/boost.git] / boost / iostreams / detail / template_params.hpp
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