1 /*============================================================================= 2 Copyright (c) 2001-2011 Joel de Guzman 3 Copyright (c) 2007 Dan Marsden 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_ALL_05052005_1238) 9 #define BOOST_FUSION_ALL_05052005_1238 10 11 #include <boost/fusion/support/config.hpp> 12 #include <boost/fusion/support/category_of.hpp> 13 #include <boost/fusion/algorithm/query/detail/all.hpp> 14 15 namespace boost { namespace fusion 16 { 17 namespace result_of 18 { 19 template <typename Sequence, typename F> 20 struct all 21 { 22 typedef bool type; 23 }; 24 } 25 26 template <typename Sequence, typename F> 27 BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED 28 inline bool all(Sequence const & seq,F f)29 all(Sequence const& seq, F f) 30 { 31 return detail::all(seq, f, typename traits::category_of<Sequence>::type()); 32 } 33 }} 34 35 #endif 36 37