1 /*============================================================================= 2 Copyright (c) 2011 Eric Niebler 3 Copyright (c) 2018 Kohei Takahashi 4 5 Distributed under the Boost Software License, Version 1.0. (See accompanying 6 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 7 ==============================================================================*/ 8 #if !defined(BOOST_FUSION_FOR_EACH_FWD_HPP_INCLUDED) 9 #define BOOST_FUSION_FOR_EACH_FWD_HPP_INCLUDED 10 11 #include <boost/fusion/support/config.hpp> 12 #include <boost/fusion/support/is_sequence.hpp> 13 #include <boost/core/enable_if.hpp> 14 15 namespace boost { namespace fusion 16 { 17 namespace result_of 18 { 19 template <typename Sequence, typename F> 20 struct for_each; 21 } 22 23 template <typename Sequence, typename F> 24 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED 25 inline typename enable_if<traits::is_sequence<Sequence> >::type 26 for_each(Sequence& seq, F f); 27 28 template <typename Sequence, typename F> 29 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED 30 inline typename enable_if<traits::is_sequence<Sequence> >::type 31 for_each(Sequence const& seq, F f); 32 }} 33 34 #endif 35