/*============================================================================= Copyright (c) 2001-2006 Joel de Guzman Copyright (c) 2005 Eric Niebler Use, modification and distribution is subject to the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) ==============================================================================*/ #if !defined(FUSION_ANY_05052005_1229) #define FUSION_ANY_05052005_1229 #include #include #include #include namespace boost { namespace fusion { namespace detail { template inline bool any(First const&, Last const&, F const&, mpl::true_) { return false; } template inline bool any(First const& first, Last const& last, F& f, mpl::false_) { typename result_of::deref::type x = *first; return f(x) || detail::any( fusion::next(first) , last , f , result_of::equal_to::type, Last>()); } }}} #endif