1
2// Copyright Aleksey Gurtovoy 2000-2004
3//
4// Distributed under the Boost Software License, Version 1.0.
5// (See accompanying file LICENSE_1_0.txt or copy at
6// http://www.boost.org/LICENSE_1_0.txt)
7//
8
9// Preprocessed version of "boost/mpl/quote.hpp" header
10// -- DO NOT modify by hand!
11
12namespace boost { namespace mpl {
13
14template< typename T, bool has_type_ >
15struct quote_impl
16{
17 typedef typename T::type type;
18};
19
20template< typename T >
21struct quote_impl< T,false >
22{
23 typedef T type;
24};
25
26template<
27 template< typename P1 > class F
28 , typename Tag = void_
29 >
30struct quote1
31{
32 template< typename U1 > struct apply
33
34 : quote_impl<
35 F<U1>
36 , aux::has_type< F<U1> >::value
37 >
38
39 {
40 };
41};
42
43template<
44 template< typename P1, typename P2 > class F
45 , typename Tag = void_
46 >
47struct quote2
48{
49 template< typename U1, typename U2 > struct apply
50
51 : quote_impl<
52 F< U1,U2 >
53 , aux::has_type< F< U1,U2 > >::value
54 >
55
56 {
57 };
58};
59
60template<
61 template< typename P1, typename P2, typename P3 > class F
62 , typename Tag = void_
63 >
64struct quote3
65{
66 template< typename U1, typename U2, typename U3 > struct apply
67
68 : quote_impl<
69 F< U1,U2,U3 >
70 , aux::has_type< F< U1,U2,U3 > >::value
71 >
72
73 {
74 };
75};
76
77template<
78 template< typename P1, typename P2, typename P3, typename P4 > class F
79 , typename Tag = void_
80 >
81struct quote4
82{
83 template<
84 typename U1, typename U2, typename U3, typename U4
85 >
86 struct apply
87
88 : quote_impl<
89 F< U1,U2,U3,U4 >
90 , aux::has_type< F< U1,U2,U3,U4 > >::value
91 >
92
93 {
94 };
95};
96
97template<
98 template<
99 typename P1, typename P2, typename P3, typename P4
100 , typename P5
101 >
102 class F
103 , typename Tag = void_
104 >
105struct quote5
106{
107 template<
108 typename U1, typename U2, typename U3, typename U4
109 , typename U5
110 >
111 struct apply
112
113 : quote_impl<
114 F< U1,U2,U3,U4,U5 >
115 , aux::has_type< F< U1,U2,U3,U4,U5 > >::value
116 >
117
118 {
119 };
120};
121
122}}
123
124