Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:41:06

0001 
0002 // Copyright Peter Dimov 2001-2002
0003 // Copyright Aleksey Gurtovoy 2001-2004
0004 //
0005 // Distributed under the Boost Software License, Version 1.0. 
0006 // (See accompanying file LICENSE_1_0.txt or copy at 
0007 // http://www.boost.org/LICENSE_1_0.txt)
0008 //
0009 
0010 // *Preprocessed* version of the main "arg.hpp" header
0011 // -- DO NOT modify by hand!
0012 
0013 BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN
0014 template<> struct arg< -1 >
0015 {
0016     BOOST_STATIC_CONSTANT(int, value  = -1);
0017     BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
0018     BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
0019 
0020     template<
0021           typename U1, typename U2, typename U3, typename U4, typename U5
0022         >
0023     struct apply
0024     {
0025         typedef U1 type;
0026         BOOST_MPL_AUX_ASSERT_NOT_NA(type);
0027     };
0028 };
0029 
0030 template<> struct arg<1>
0031 {
0032     BOOST_STATIC_CONSTANT(int, value  = 1);
0033     typedef arg<2> next;
0034     BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
0035     BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
0036 
0037     template<
0038           typename U1, typename U2, typename U3, typename U4, typename U5
0039         >
0040     struct apply
0041     {
0042         typedef U1 type;
0043         BOOST_MPL_AUX_ASSERT_NOT_NA(type);
0044     };
0045 };
0046 
0047 template<> struct arg<2>
0048 {
0049     BOOST_STATIC_CONSTANT(int, value  = 2);
0050     typedef arg<3> next;
0051     BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
0052     BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
0053 
0054     template<
0055           typename U1, typename U2, typename U3, typename U4, typename U5
0056         >
0057     struct apply
0058     {
0059         typedef U2 type;
0060         BOOST_MPL_AUX_ASSERT_NOT_NA(type);
0061     };
0062 };
0063 
0064 template<> struct arg<3>
0065 {
0066     BOOST_STATIC_CONSTANT(int, value  = 3);
0067     typedef arg<4> next;
0068     BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
0069     BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
0070 
0071     template<
0072           typename U1, typename U2, typename U3, typename U4, typename U5
0073         >
0074     struct apply
0075     {
0076         typedef U3 type;
0077         BOOST_MPL_AUX_ASSERT_NOT_NA(type);
0078     };
0079 };
0080 
0081 template<> struct arg<4>
0082 {
0083     BOOST_STATIC_CONSTANT(int, value  = 4);
0084     typedef arg<5> next;
0085     BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
0086     BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
0087 
0088     template<
0089           typename U1, typename U2, typename U3, typename U4, typename U5
0090         >
0091     struct apply
0092     {
0093         typedef U4 type;
0094         BOOST_MPL_AUX_ASSERT_NOT_NA(type);
0095     };
0096 };
0097 
0098 template<> struct arg<5>
0099 {
0100     BOOST_STATIC_CONSTANT(int, value  = 5);
0101     typedef arg<6> next;
0102     BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
0103     BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
0104 
0105     template<
0106           typename U1, typename U2, typename U3, typename U4, typename U5
0107         >
0108     struct apply
0109     {
0110         typedef U5 type;
0111         BOOST_MPL_AUX_ASSERT_NOT_NA(type);
0112     };
0113 };
0114 
0115 BOOST_MPL_AUX_NONTYPE_ARITY_SPEC(1,int, arg)
0116 
0117 BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE