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/or.hpp" header 10 // -- DO NOT modify by hand! 11 12 namespace boost { namespace mpl { 13 14 namespace aux { 15 template< bool C_ > struct or_impl 16 { 17 template< 18 typename T1, typename T2, typename T3, typename T4 19 > 20 struct result_ 21 : true_ 22 { 23 }; 24 }; 25 26 template<> struct or_impl<false> 27 { 28 template< 29 typename T1, typename T2, typename T3, typename T4 30 > 31 struct result_ 32 : or_impl< 33 BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value 34 >::template result_< T2,T3,T4,false_ > 35 { 36 }; 37 }; 38 39 template<> 40 struct or_impl<false> 41 ::result_< false_,false_,false_,false_ > 42 : false_ 43 { 44 }; 45 46 } // namespace aux 47 48 template< 49 typename BOOST_MPL_AUX_NA_PARAM(T1) 50 , typename BOOST_MPL_AUX_NA_PARAM(T2) 51 , typename T3 = false_, typename T4 = false_, typename T5 = false_ 52 > 53 struct or_ 54 55 : aux::or_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 , or_ 63 , ( T1, T2, T3, T4, T5) 64 ) 65 }; 66 67 BOOST_MPL_AUX_NA_SPEC2( 68 2 69 , 5 70 , or_ 71 ) 72 73 }} 74