1.1 --- a/epoc32/include/stdapis/boost/mpl/aux_/preprocessed/plain/quote.hpp Wed Mar 31 12:27:01 2010 +0100
1.2 +++ b/epoc32/include/stdapis/boost/mpl/aux_/preprocessed/plain/quote.hpp Wed Mar 31 12:33:34 2010 +0100
1.3 @@ -1,10 +1,3 @@
1.4 -
1.5 -#if !defined(BOOST_PP_IS_ITERATING)
1.6 -
1.7 -///// header body
1.8 -
1.9 -#ifndef BOOST_MPL_QUOTE_HPP_INCLUDED
1.10 -#define BOOST_MPL_QUOTE_HPP_INCLUDED
1.11
1.12 // Copyright Aleksey Gurtovoy 2000-2004
1.13 //
1.14 @@ -12,129 +5,119 @@
1.15 // (See accompanying file LICENSE_1_0.txt or copy at
1.16 // http://www.boost.org/LICENSE_1_0.txt)
1.17 //
1.18 -// See http://www.boost.org/libs/mpl for documentation.
1.19
1.20 -// $Source: /cvsroot/boost/boost/boost/mpl/quote.hpp,v $
1.21 -// $Date: 2006/05/03 03:27:58 $
1.22 -// $Revision: 1.5.14.2 $
1.23 -
1.24 -#if !defined(BOOST_MPL_PREPROCESSING_MODE)
1.25 -# include <boost/mpl/void.hpp>
1.26 -# include <boost/mpl/aux_/has_type.hpp>
1.27 -#endif
1.28 -
1.29 -#include <boost/mpl/aux_/config/ttp.hpp>
1.30 -
1.31 -#if defined(BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS)
1.32 -# define BOOST_MPL_CFG_NO_QUOTE_TEMPLATE
1.33 -#endif
1.34 -
1.35 -#if !defined(BOOST_MPL_CFG_NO_IMPLICIT_METAFUNCTIONS) \
1.36 - && defined(BOOST_MPL_CFG_NO_HAS_XXX)
1.37 -# define BOOST_MPL_CFG_NO_IMPLICIT_METAFUNCTIONS
1.38 -#endif
1.39 -
1.40 -#include <boost/mpl/aux_/config/use_preprocessed.hpp>
1.41 -
1.42 -#if !defined(BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS) \
1.43 - && !defined(BOOST_MPL_PREPROCESSING_MODE)
1.44 -
1.45 -# define BOOST_MPL_PREPROCESSED_HEADER quote.hpp
1.46 -# include <boost/mpl/aux_/include_preprocessed.hpp>
1.47 -
1.48 -#else
1.49 -
1.50 -# include <boost/mpl/limits/arity.hpp>
1.51 -# include <boost/mpl/aux_/preprocessor/params.hpp>
1.52 -# include <boost/mpl/aux_/config/ctps.hpp>
1.53 -# include <boost/mpl/aux_/config/workaround.hpp>
1.54 -
1.55 -# include <boost/preprocessor/iterate.hpp>
1.56 -# include <boost/preprocessor/cat.hpp>
1.57 -
1.58 -#if !defined(BOOST_MPL_CFG_NO_QUOTE_TEMPLATE)
1.59 +// Preprocessed version of "boost/mpl/quote.hpp" header
1.60 +// -- DO NOT modify by hand!
1.61
1.62 namespace boost { namespace mpl {
1.63
1.64 -#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
1.65 -
1.66 template< typename T, bool has_type_ >
1.67 struct quote_impl
1.68 -// GCC has a problem with metafunction forwarding when T is a
1.69 -// specialization of a template called 'type'.
1.70 -# if BOOST_WORKAROUND(__GNUC__, BOOST_TESTED_AT(4)) \
1.71 - && BOOST_WORKAROUND(__GNUC_MINOR__, BOOST_TESTED_AT(0)) \
1.72 - && BOOST_WORKAROUND(__GNUC_PATCHLEVEL__, BOOST_TESTED_AT(2))
1.73 -{
1.74 - typedef typename T::type type;
1.75 -};
1.76 -# else
1.77 : T
1.78 {
1.79 };
1.80 -# endif
1.81
1.82 template< typename T >
1.83 -struct quote_impl<T,false>
1.84 +struct quote_impl< T,false >
1.85 {
1.86 typedef T type;
1.87 };
1.88
1.89 -#else // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
1.90 +template<
1.91 + template< typename P1 > class F
1.92 + , typename Tag = void_
1.93 + >
1.94 +struct quote1
1.95 +{
1.96 + template< typename U1 > struct apply
1.97
1.98 -template< bool > struct quote_impl
1.99 -{
1.100 - template< typename T > struct result_
1.101 - : T
1.102 + : quote_impl<
1.103 + F<U1>
1.104 + , aux::has_type< F<U1> >::value
1.105 + >
1.106 +
1.107 {
1.108 };
1.109 };
1.110
1.111 -template<> struct quote_impl<false>
1.112 -{
1.113 - template< typename T > struct result_
1.114 - {
1.115 - typedef T type;
1.116 - };
1.117 -};
1.118 -
1.119 -#endif
1.120 -
1.121 -#define BOOST_PP_ITERATION_PARAMS_1 \
1.122 - (3,(1, BOOST_MPL_LIMIT_METAFUNCTION_ARITY, <boost/mpl/quote.hpp>))
1.123 -#include BOOST_PP_ITERATE()
1.124 -
1.125 -}}
1.126 -
1.127 -#endif // BOOST_MPL_CFG_NO_QUOTE_TEMPLATE
1.128 -
1.129 -#endif // BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
1.130 -#endif // BOOST_MPL_QUOTE_HPP_INCLUDED
1.131 -
1.132 -///// iteration
1.133 -
1.134 -#else
1.135 -#define i_ BOOST_PP_FRAME_ITERATION(1)
1.136 -
1.137 template<
1.138 - template< BOOST_MPL_PP_PARAMS(i_, typename P) > class F
1.139 + template< typename P1, typename P2 > class F
1.140 , typename Tag = void_
1.141 >
1.142 -struct BOOST_PP_CAT(quote,i_)
1.143 +struct quote2
1.144 {
1.145 - template< BOOST_MPL_PP_PARAMS(i_, typename U) > struct apply
1.146 -#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
1.147 + template< typename U1, typename U2 > struct apply
1.148 +
1.149 : quote_impl<
1.150 - F< BOOST_MPL_PP_PARAMS(i_, U) >
1.151 - , aux::has_type< F< BOOST_MPL_PP_PARAMS(i_, U) > >::value
1.152 + F< U1,U2 >
1.153 + , aux::has_type< F< U1,U2 > >::value
1.154 >
1.155 -#else
1.156 - : quote_impl< aux::has_type< F< BOOST_MPL_PP_PARAMS(i_, U) > >::value >
1.157 - ::template result_< F< BOOST_MPL_PP_PARAMS(i_, U) > >
1.158 -#endif
1.159 +
1.160 {
1.161 };
1.162 };
1.163
1.164 -#undef i_
1.165 -#endif // BOOST_PP_IS_ITERATING
1.166 +template<
1.167 + template< typename P1, typename P2, typename P3 > class F
1.168 + , typename Tag = void_
1.169 + >
1.170 +struct quote3
1.171 +{
1.172 + template< typename U1, typename U2, typename U3 > struct apply
1.173 +
1.174 + : quote_impl<
1.175 + F< U1,U2,U3 >
1.176 + , aux::has_type< F< U1,U2,U3 > >::value
1.177 + >
1.178 +
1.179 + {
1.180 + };
1.181 +};
1.182 +
1.183 +template<
1.184 + template< typename P1, typename P2, typename P3, typename P4 > class F
1.185 + , typename Tag = void_
1.186 + >
1.187 +struct quote4
1.188 +{
1.189 + template<
1.190 + typename U1, typename U2, typename U3, typename U4
1.191 + >
1.192 + struct apply
1.193 +
1.194 + : quote_impl<
1.195 + F< U1,U2,U3,U4 >
1.196 + , aux::has_type< F< U1,U2,U3,U4 > >::value
1.197 + >
1.198 +
1.199 + {
1.200 + };
1.201 +};
1.202 +
1.203 +template<
1.204 + template<
1.205 + typename P1, typename P2, typename P3, typename P4
1.206 + , typename P5
1.207 + >
1.208 + class F
1.209 + , typename Tag = void_
1.210 + >
1.211 +struct quote5
1.212 +{
1.213 + template<
1.214 + typename U1, typename U2, typename U3, typename U4
1.215 + , typename U5
1.216 + >
1.217 + struct apply
1.218 +
1.219 + : quote_impl<
1.220 + F< U1,U2,U3,U4,U5 >
1.221 + , aux::has_type< F< U1,U2,U3,U4,U5 > >::value
1.222 + >
1.223 +
1.224 + {
1.225 + };
1.226 +};
1.227 +
1.228 +}}
1.229 +