blob: 2ae4e3b8c2f0176b384411c39a18e05c244a6be7 [file] [log] [blame]
Jeff Thompsona28eed82013-08-22 16:21:10 -07001
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 "ndnboost/mpl/and.hpp" header
10// -- DO NOT modify by hand!
11
12namespace ndnboost { namespace mpl {
13
14namespace aux {
15template< bool C_ > struct and_impl
16{
17 template<
18 typename T1, typename T2, typename T3, typename T4
19 >
20 struct result_
21 : false_
22 {
23 };
24};
25
26template<> struct and_impl<true>
27{
28 template<
29 typename T1, typename T2, typename T3, typename T4
30 >
31 struct result_
32 : and_impl<
33 BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
34 >::template result_< T2,T3,T4,true_ >
35 {
36 };
37};
38
39template<>
40struct and_impl<true>
41 ::result_< true_,true_,true_,true_ >
42 : true_
43{
44};
45
46} // namespace aux
47
48template<
49 typename BOOST_MPL_AUX_NA_PARAM(T1)
50 , typename BOOST_MPL_AUX_NA_PARAM(T2)
51 , typename T3 = true_, typename T4 = true_, typename T5 = true_
52 >
53struct and_
54
55 : aux::and_impl<
56 BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
57 >::template result_< T2,T3,T4,T5 >
58
59{
60 BOOST_MPL_AUX_LAMBDA_SUPPORT(
61 5
62 , and_
63 , ( T1, T2, T3, T4, T5)
64 )
65};
66
67BOOST_MPL_AUX_NA_SPEC2(
68 2
69 , 5
70 , and_
71 )
72
73}}