PageRenderTime 34ms CodeModel.GetById 18ms app.highlight 13ms RepoModel.GetById 1ms app.codeStats 0ms

/Src/Dependencies/Boost/boost/mpl/aux_/preprocessed/bcc/arg.hpp

http://hadesmem.googlecode.com/
C++ Header | 117 lines | 92 code | 16 blank | 9 comment | 0 complexity | 7995c8109a797706fc4a211527792147 MD5 | raw file
  1
  2// Copyright Peter Dimov 2001-2002
  3// Copyright Aleksey Gurtovoy 2001-2004
  4//
  5// Distributed under the Boost Software License, Version 1.0. 
  6// (See accompanying file LICENSE_1_0.txt or copy at 
  7// http://www.boost.org/LICENSE_1_0.txt)
  8//
  9
 10// *Preprocessed* version of the main "arg.hpp" header
 11// -- DO NOT modify by hand!
 12
 13BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN
 14template<> struct arg< -1 >
 15{
 16    BOOST_STATIC_CONSTANT(int, value  = -1);
 17    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
 18    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
 19
 20    template<
 21          typename U1, typename U2, typename U3, typename U4, typename U5
 22        >
 23    struct apply
 24    {
 25        typedef U1 type;
 26        BOOST_MPL_AUX_ASSERT_NOT_NA(type);
 27    };
 28};
 29
 30template<> struct arg<1>
 31{
 32    BOOST_STATIC_CONSTANT(int, value  = 1);
 33    typedef arg<2> next;
 34    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
 35    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
 36
 37    template<
 38          typename U1, typename U2, typename U3, typename U4, typename U5
 39        >
 40    struct apply
 41    {
 42        typedef U1 type;
 43        BOOST_MPL_AUX_ASSERT_NOT_NA(type);
 44    };
 45};
 46
 47template<> struct arg<2>
 48{
 49    BOOST_STATIC_CONSTANT(int, value  = 2);
 50    typedef arg<3> next;
 51    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
 52    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
 53
 54    template<
 55          typename U1, typename U2, typename U3, typename U4, typename U5
 56        >
 57    struct apply
 58    {
 59        typedef U2 type;
 60        BOOST_MPL_AUX_ASSERT_NOT_NA(type);
 61    };
 62};
 63
 64template<> struct arg<3>
 65{
 66    BOOST_STATIC_CONSTANT(int, value  = 3);
 67    typedef arg<4> next;
 68    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
 69    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
 70
 71    template<
 72          typename U1, typename U2, typename U3, typename U4, typename U5
 73        >
 74    struct apply
 75    {
 76        typedef U3 type;
 77        BOOST_MPL_AUX_ASSERT_NOT_NA(type);
 78    };
 79};
 80
 81template<> struct arg<4>
 82{
 83    BOOST_STATIC_CONSTANT(int, value  = 4);
 84    typedef arg<5> next;
 85    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
 86    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
 87
 88    template<
 89          typename U1, typename U2, typename U3, typename U4, typename U5
 90        >
 91    struct apply
 92    {
 93        typedef U4 type;
 94        BOOST_MPL_AUX_ASSERT_NOT_NA(type);
 95    };
 96};
 97
 98template<> struct arg<5>
 99{
100    BOOST_STATIC_CONSTANT(int, value  = 5);
101    typedef arg<6> next;
102    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
103    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
104
105    template<
106          typename U1, typename U2, typename U3, typename U4, typename U5
107        >
108    struct apply
109    {
110        typedef U5 type;
111        BOOST_MPL_AUX_ASSERT_NOT_NA(type);
112    };
113};
114
115BOOST_MPL_AUX_NONTYPE_ARITY_SPEC(1,int, arg)
116
117BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE