~ubuntu-branches/ubuntu/warty/aqsis/warty

« back to all changes in this revision

Viewing changes to boost/boost/mpl/aux_/preprocessed/plain/and.hpp

  • Committer: Bazaar Package Importer
  • Author(s): LaMont Jones
  • Date: 2004-08-24 07:25:04 UTC
  • Revision ID: james.westby@ubuntu.com-20040824072504-zf993vnevvisdsvb
Tags: upstream-0.9.1
ImportĀ upstreamĀ versionĀ 0.9.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
 
2
// see the original for copyright information
 
3
 
 
4
namespace boost { namespace mpl {
 
5
 
 
6
namespace aux {
 
7
 
 
8
template< bool C_, typename T1, typename T2, typename T3, typename T4 >
 
9
struct and_impl
 
10
    : false_
 
11
{
 
12
};
 
13
 
 
14
template< typename T1, typename T2, typename T3, typename T4 >
 
15
struct and_impl< true,T1,T2,T3,T4 >
 
16
    : and_impl<
 
17
          BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
 
18
        , T2, T3, T4
 
19
        , true_
 
20
        >
 
21
{
 
22
};
 
23
 
 
24
template<>
 
25
struct and_impl<
 
26
          true
 
27
        , true_, true_, true_, true_
 
28
        >
 
29
    : true_
 
30
{
 
31
};
 
32
 
 
33
} // namespace aux
 
34
 
 
35
template<
 
36
      typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
 
37
    , typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
 
38
    , typename T3 = true_, typename T4 = true_, typename T5 = true_
 
39
    >
 
40
struct and_
 
41
 
 
42
    : aux::and_impl<
 
43
          BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
 
44
        , T2, T3, T4, T5
 
45
        >
 
46
 
 
47
{
 
48
    BOOST_MPL_AUX_LAMBDA_SUPPORT(
 
49
          5
 
50
        , and_
 
51
        , (T1, T2, T3, T4, T5)
 
52
        )
 
53
};
 
54
 
 
55
BOOST_MPL_AUX_VOID_SPEC_EXT(
 
56
      2
 
57
    , 5
 
58
    , and_
 
59
    )
 
60
 
 
61
}} // namespace boost::mpl
 
62