Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:34:41

0001 /*=============================================================================
0002     Copyright (c) 2011 Eric Niebler
0003 
0004     Distributed under the Boost Software License, Version 1.0. (See accompanying
0005     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0006 ==============================================================================*/
0007 #if !defined(BOOST_FUSION_SEGMENTED_ITERATOR_EQUAL_TO_HPP_INCLUDED)
0008 #define BOOST_FUSION_SEGMENTED_ITERATOR_EQUAL_TO_HPP_INCLUDED
0009 
0010 #include <boost/fusion/support/config.hpp>
0011 #include <boost/mpl/and.hpp>
0012 #include <boost/mpl/bool.hpp>
0013 #include <boost/fusion/iterator/equal_to.hpp>
0014 
0015 namespace boost { namespace fusion
0016 {
0017     struct nil_;
0018 
0019     namespace detail
0020     {
0021         template <typename Stack1, typename Stack2>
0022         struct segmented_equal_to
0023           : mpl::and_<
0024                 segmented_equal_to<
0025                     typename Stack1::cdr_type,
0026                     typename Stack2::cdr_type
0027                 >
0028               , result_of::equal_to<
0029                     typename Stack1::car_type::begin_type,
0030                     typename Stack2::car_type::begin_type
0031                 >
0032             >
0033         {};
0034 
0035         template <>
0036         struct segmented_equal_to<fusion::nil_, fusion::nil_>
0037           : mpl::true_
0038         {};
0039     }
0040 }}
0041 
0042 #endif