diff -r e1b950c65cb4 -r 837f303aceeb epoc32/include/stdapis/boost/mpl/aux_/empty_impl.hpp --- a/epoc32/include/stdapis/boost/mpl/aux_/empty_impl.hpp Wed Mar 31 12:27:01 2010 +0100 +++ b/epoc32/include/stdapis/boost/mpl/aux_/empty_impl.hpp Wed Mar 31 12:33:34 2010 +0100 @@ -1,8 +1,8 @@ -#ifndef BOOST_MPL_SET_AUX_EMPTY_IMPL_HPP_INCLUDED -#define BOOST_MPL_SET_AUX_EMPTY_IMPL_HPP_INCLUDED +#ifndef BOOST_MPL_AUX_EMPTY_IMPL_HPP_INCLUDED +#define BOOST_MPL_AUX_EMPTY_IMPL_HPP_INCLUDED -// Copyright Aleksey Gurtovoy 2003-2004 +// Copyright Aleksey Gurtovoy 2000-2004 // // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt or copy at @@ -10,25 +10,34 @@ // // See http://www.boost.org/libs/mpl for documentation. -// $Source: /cvsroot/boost/boost/boost/mpl/set/aux_/empty_impl.hpp,v $ -// $Date: 2004/09/02 15:41:02 $ -// $Revision: 1.2 $ +// $Source: /cvsroot/boost/boost/boost/mpl/aux_/empty_impl.hpp,v $ +// $Date: 2004/09/02 15:40:43 $ +// $Revision: 1.4 $ #include -#include -#include +#include +#include +#include namespace boost { namespace mpl { -template<> -struct empty_impl< aux::set_tag > +// default implementation; conrete sequences might override it by +// specializing either the 'empty_impl' or the primary 'empty' template + +template< typename Tag > +struct empty_impl { - template< typename Set > struct apply - : not_< typename Set::size > + template< typename Sequence > struct apply + : is_same< + typename begin::type + , typename end::type + > { }; }; +BOOST_MPL_ALGORITM_TRAITS_LAMBDA_SPEC(1,empty_impl) + }} -#endif // BOOST_MPL_SET_AUX_EMPTY_IMPL_HPP_INCLUDED +#endif // BOOST_MPL_AUX_EMPTY_IMPL_HPP_INCLUDED