Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-12-16 09:49:28

0001 /*=============================================================================
0002     Copyright (c) 1999-2003 Jaakko Jarvi
0003     Copyright (c) 2001-2011 Joel de Guzman
0004 
0005     Distributed under the Boost Software License, Version 1.0. (See accompanying
0006     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0007 ==============================================================================*/
0008 #if !defined(FUSION_LESS_EQUAL_05052005_0432)
0009 #define FUSION_LESS_EQUAL_05052005_0432
0010 
0011 #include <boost/fusion/support/config.hpp>
0012 #include <boost/fusion/sequence/intrinsic/begin.hpp>
0013 #include <boost/fusion/sequence/intrinsic/end.hpp>
0014 #include <boost/fusion/sequence/intrinsic/size.hpp>
0015 #include <boost/fusion/sequence/comparison/enable_comparison.hpp>
0016 
0017 #if defined(FUSION_DIRECT_OPERATOR_USAGE)
0018 #include <boost/fusion/sequence/comparison/detail/less_equal.hpp>
0019 #else
0020 #include <boost/fusion/sequence/comparison/less.hpp>
0021 #endif
0022 
0023 namespace boost { namespace fusion
0024 {
0025     template <typename Seq1, typename Seq2>
0026     BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0027     inline bool
0028     less_equal(Seq1 const& a, Seq2 const& b)
0029     {
0030 #if defined(FUSION_DIRECT_OPERATOR_USAGE)
0031         return detail::sequence_less_equal<Seq1 const, Seq2 const>::
0032             call(fusion::begin(a), fusion::begin(b));
0033 #else
0034         return !(b < a);
0035 #endif
0036     }
0037 
0038     namespace operators
0039     {
0040         template <typename Seq1, typename Seq2>
0041         BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0042         inline typename
0043             boost::enable_if<
0044                 traits::enable_comparison<Seq1, Seq2>
0045               , bool
0046             >::type
0047         operator<=(Seq1 const& a, Seq2 const& b)
0048         {
0049             return fusion::less_equal(a, b);
0050         }
0051     }
0052     using operators::operator<=;
0053 }}
0054 
0055 #endif