2 #ifndef BOOST_MPL_SET_AUX_ITERATOR_HPP_INCLUDED
3 #define BOOST_MPL_SET_AUX_ITERATOR_HPP_INCLUDED
27 namespace boost {
namespace mpl {
30 template<
typename Set,
typename Tail >
struct s_iter;
32 template<
typename Set,
typename Tail >
struct s_iter_get
34 has_key< Set,typename Tail::item_type_ >
35 , identity< s_iter<Set,Tail> >
36 , next< s_iter<Set,Tail> >
45 typedef typename Tail::item_type_
type;
47 #if defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
52 #if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
54 template<
typename Set,
typename Tail >
60 template<
typename Set >
66 template<
typename Set,
typename Tail >
struct s_iter
78 template<
typename Set >
85 template<
typename Set,
typename Tail >
struct s_iter
87 is_same< Tail,set0<> >
89 , s_iter_impl<Set,Tail>
94 #endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
98 #endif // BOOST_MPL_SET_AUX_ITERATOR_HPP_INCLUDED