Ugly, not-to-be-pushed sucking in of all of Boost to get windows to work.
[dyninst.git] / external / boost / mpl / aux_ / preprocessed / msvc70 / quote.hpp
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
12 namespace boost { namespace mpl {
13 template< bool > struct quote_impl
14 {
15     template< typename T > struct result_
16         : T
17     {
18     };
19 };
20
21 template<> struct quote_impl<false>
22 {
23     template< typename T > struct result_
24     {
25         typedef T type;
26     };
27 };
28
29 template<
30       template< typename P1 > class F
31     , typename Tag = void_
32     >
33 struct quote1
34 {
35     template< typename U1 > struct apply
36
37         : quote_impl< aux::has_type< F<U1> >::value >
38             ::template result_< F<U1> >
39
40     {
41     };
42 };
43
44 template<
45       template< typename P1, typename P2 > class F
46     , typename Tag = void_
47     >
48 struct quote2
49 {
50     template< typename U1, typename U2 > struct apply
51
52         : quote_impl< aux::has_type< F< U1,U2 > >::value >
53             ::template result_< F< U1,U2 > >
54
55     {
56     };
57 };
58
59 template<
60       template< typename P1, typename P2, typename P3 > class F
61     , typename Tag = void_
62     >
63 struct quote3
64 {
65     template< typename U1, typename U2, typename U3 > struct apply
66
67         : quote_impl< aux::has_type< F< U1,U2,U3 > >::value >
68             ::template result_< F< U1,U2,U3 > >
69
70     {
71     };
72 };
73
74 template<
75       template< typename P1, typename P2, typename P3, typename P4 > class F
76     , typename Tag = void_
77     >
78 struct quote4
79 {
80     template<
81           typename U1, typename U2, typename U3, typename U4
82         >
83     struct apply
84
85         : quote_impl< aux::has_type< F< U1,U2,U3,U4 > >::value >
86             ::template result_< F< U1,U2,U3,U4 > >
87
88     {
89     };
90 };
91
92 template<
93       template<
94           typename P1, typename P2, typename P3, typename P4
95         , typename P5
96         >
97       class F
98     , typename Tag = void_
99     >
100 struct quote5
101 {
102     template<
103           typename U1, typename U2, typename U3, typename U4
104         , typename U5
105         >
106     struct apply
107
108         : quote_impl< aux::has_type< F< U1,U2,U3,U4,U5 > >::value >
109             ::template result_< F< U1,U2,U3,U4,U5 > >
110
111     {
112     };
113 };
114
115 }}
116