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