Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:31:17

0001 /*==============================================================================
0002     Copyright (c) 2013 Jamboree
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 #ifndef BOOST_FUSION_ALGORITHM_FLATTEN_HPP_INCLUDED
0008 #define BOOST_FUSION_ALGORITHM_FLATTEN_HPP_INCLUDED
0009 
0010 
0011 #include <boost/fusion/view/flatten_view.hpp>
0012 #include <boost/fusion/support/is_sequence.hpp>
0013 #include <boost/utility/enable_if.hpp>
0014 
0015 
0016 namespace boost { namespace fusion { namespace result_of
0017 {
0018     template<typename Sequence>
0019     struct flatten
0020     {
0021         typedef flatten_view<Sequence> type;
0022     };
0023 }}}
0024 
0025 namespace boost { namespace fusion
0026 {
0027     template <typename Sequence>
0028     BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0029     inline typename result_of::flatten<Sequence>::type
0030     flatten(Sequence& view)
0031     {
0032         return flatten_view<Sequence>(view);
0033     }
0034 
0035     template <typename Sequence>
0036     BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0037     inline typename result_of::flatten<Sequence const>::type
0038     flatten(Sequence const& view)
0039     {
0040         return flatten_view<Sequence const>(view);
0041     }
0042 }}
0043 
0044 
0045 #endif
0046