Back to home page

EIC code displayed by LXR

 
 

    


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

0001 
0002 // Copyright Aleksey Gurtovoy 2000-2004
0003 //
0004 // Distributed under the Boost Software License, Version 1.0. 
0005 // (See accompanying file LICENSE_1_0.txt or copy at 
0006 // http://www.boost.org/LICENSE_1_0.txt)
0007 //
0008 
0009 // Preprocessed version of "boost/mpl/apply_wrap.hpp" header
0010 // -- DO NOT modify by hand!
0011 
0012 namespace boost { namespace mpl {
0013 
0014 template<
0015       typename F
0016 
0017     , typename has_apply_ = typename aux::has_apply<F>::type
0018 
0019     >
0020 struct apply_wrap0
0021 
0022 {
0023     typedef typename F::template apply<
0024         
0025         >::type type;
0026 
0027 };
0028 
0029 /// workaround for ETI bug
0030 template<>
0031 struct apply_wrap0<int>
0032 {
0033     typedef int type;
0034 };
0035 
0036 template<
0037       typename F, typename T1
0038 
0039     >
0040 struct apply_wrap1
0041 
0042 {
0043     typedef typename F::template apply<
0044          T1
0045         >::type type;
0046 
0047 };
0048 
0049 /// workaround for ETI bug
0050 template<>
0051 struct apply_wrap1< int,int >
0052 {
0053     typedef int type;
0054 };
0055 
0056 template<
0057       typename F, typename T1, typename T2
0058 
0059     >
0060 struct apply_wrap2
0061 
0062 {
0063     typedef typename F::template apply<
0064          T1, T2
0065         >::type type;
0066 
0067 };
0068 
0069 /// workaround for ETI bug
0070 template<>
0071 struct apply_wrap2< int,int,int >
0072 {
0073     typedef int type;
0074 };
0075 
0076 template<
0077       typename F, typename T1, typename T2, typename T3
0078 
0079     >
0080 struct apply_wrap3
0081 
0082 {
0083     typedef typename F::template apply<
0084          T1, T2, T3
0085         >::type type;
0086 
0087 };
0088 
0089 /// workaround for ETI bug
0090 template<>
0091 struct apply_wrap3< int,int,int,int >
0092 {
0093     typedef int type;
0094 };
0095 
0096 template<
0097       typename F, typename T1, typename T2, typename T3, typename T4
0098 
0099     >
0100 struct apply_wrap4
0101 
0102 {
0103     typedef typename F::template apply<
0104          T1, T2, T3, T4
0105         >::type type;
0106 
0107 };
0108 
0109 /// workaround for ETI bug
0110 template<>
0111 struct apply_wrap4< int,int,int,int,int >
0112 {
0113     typedef int type;
0114 };
0115 
0116 template<
0117       typename F, typename T1, typename T2, typename T3, typename T4
0118     , typename T5
0119 
0120     >
0121 struct apply_wrap5
0122 
0123 {
0124     typedef typename F::template apply<
0125          T1, T2, T3, T4, T5
0126         >::type type;
0127 
0128 };
0129 
0130 /// workaround for ETI bug
0131 template<>
0132 struct apply_wrap5< int,int,int,int,int,int >
0133 {
0134     typedef int type;
0135 };
0136 
0137 }}
0138