File indexing completed on 2025-01-18 09:41:01
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 namespace boost { namespace mpl {
0013
0014 template< typename T, bool has_type_ >
0015 struct quote_impl
0016
0017 {
0018 typedef typename T::type type;
0019 };
0020
0021 template< typename T >
0022 struct quote_impl< T,false >
0023 {
0024 typedef T type;
0025 };
0026
0027 template<
0028 template< typename P1 > class F
0029 , typename Tag = void_
0030 >
0031 struct quote1
0032 {
0033 template< typename U1 > struct apply
0034
0035 {
0036 typedef typename quote_impl<
0037 F<U1>
0038 , aux::has_type< F<U1> >::value
0039 >::type type;
0040 };
0041 };
0042
0043 template<
0044 template< typename P1, typename P2 > class F
0045 , typename Tag = void_
0046 >
0047 struct quote2
0048 {
0049 template< typename U1, typename U2 > struct apply
0050
0051 {
0052 typedef typename quote_impl<
0053 F< U1,U2 >
0054 , aux::has_type< F< U1,U2 > >::value
0055 >::type type;
0056 };
0057 };
0058
0059 template<
0060 template< typename P1, typename P2, typename P3 > class F
0061 , typename Tag = void_
0062 >
0063 struct quote3
0064 {
0065 template< typename U1, typename U2, typename U3 > struct apply
0066
0067 {
0068 typedef typename quote_impl<
0069 F< U1,U2,U3 >
0070 , aux::has_type< F< U1,U2,U3 > >::value
0071 >::type type;
0072 };
0073 };
0074
0075 template<
0076 template< typename P1, typename P2, typename P3, typename P4 > class F
0077 , typename Tag = void_
0078 >
0079 struct quote4
0080 {
0081 template<
0082 typename U1, typename U2, typename U3, typename U4
0083 >
0084 struct apply
0085
0086 {
0087 typedef typename quote_impl<
0088 F< U1,U2,U3,U4 >
0089 , aux::has_type< F< U1,U2,U3,U4 > >::value
0090 >::type type;
0091 };
0092 };
0093
0094 template<
0095 template<
0096 typename P1, typename P2, typename P3, typename P4
0097 , typename P5
0098 >
0099 class F
0100 , typename Tag = void_
0101 >
0102 struct quote5
0103 {
0104 template<
0105 typename U1, typename U2, typename U3, typename U4
0106 , typename U5
0107 >
0108 struct apply
0109
0110 {
0111 typedef typename quote_impl<
0112 F< U1,U2,U3,U4,U5 >
0113 , aux::has_type< F< U1,U2,U3,U4,U5 > >::value
0114 >::type type;
0115 };
0116 };
0117
0118 }}
0119