Fixed a bug that prevented set iterators from working at all, which

was breaking just about every algorithm when used on sets.


[SVN r29681]
This commit is contained in:
Dave Abrahams
2005-06-18 22:03:09 +00:00
parent eb00ae5d72
commit 04278cf84b
9 changed files with 133 additions and 56 deletions

View File

@@ -29,6 +29,7 @@ template< typename T, typename Base >
struct s_item
: Base
{
typedef s_item<T,Base> item_;
typedef void_ last_masked_;
typedef Base next_;
typedef T item_type_;
@@ -53,6 +54,7 @@ template< typename T, typename Base >
struct s_mask
: Base
{
typedef s_mask<T,Base> item_;
typedef T last_masked_;
typedef void_ item_type_;
typedef Base base;
@@ -66,6 +68,7 @@ template< typename T, typename Base >
struct s_unmask
: Base
{
typedef s_unmask<T,Base> item_;
typedef void_ last_masked_;
typedef T item_type_;
typedef Base base;

View File

@@ -31,9 +31,9 @@ template< typename Set, typename Tail > struct s_iter;
template< typename Set, typename Tail > struct s_iter_impl
{
typedef Tail tail_;
typedef forward_iterator_tag category;
typedef typename Tail::type type;
typedef Tail tail_;
typedef forward_iterator_tag category;
typedef typename Tail::item_::type type;
#if defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
typedef typename eval_if<

View File

@@ -22,9 +22,9 @@
#define i_ BOOST_PP_FRAME_ITERATION(1)
# define AUX778076_SET_TAIL(set, i_, T) \
BOOST_PP_CAT(set,i_)< \
typename BOOST_PP_CAT(set,i_)< \
BOOST_PP_ENUM_PARAMS(i_, T) \
> \
>::item_ \
/**/
#if i_ > 0

View File

@@ -18,7 +18,7 @@ template<
struct set1
: s_item<
T0
, set0< >
, typename set0< >::item_
>
{
typedef set1 type;
@@ -30,7 +30,7 @@ template<
struct set2
: s_item<
T1
, set1<T0>
, typename set1<T0>::item_
>
{
typedef set2 type;
@@ -42,7 +42,7 @@ template<
struct set3
: s_item<
T2
, set2< T0,T1 >
, typename set2< T0,T1 >::item_
>
{
typedef set3 type;
@@ -54,7 +54,7 @@ template<
struct set4
: s_item<
T3
, set3< T0,T1,T2 >
, typename set3< T0,T1,T2 >::item_
>
{
typedef set4 type;
@@ -66,7 +66,7 @@ template<
struct set5
: s_item<
T4
, set4< T0,T1,T2,T3 >
, typename set4< T0,T1,T2,T3 >::item_
>
{
typedef set5 type;
@@ -79,7 +79,7 @@ template<
struct set6
: s_item<
T5
, set5< T0,T1,T2,T3,T4 >
, typename set5< T0,T1,T2,T3,T4 >::item_
>
{
typedef set6 type;
@@ -92,7 +92,7 @@ template<
struct set7
: s_item<
T6
, set6< T0,T1,T2,T3,T4,T5 >
, typename set6< T0,T1,T2,T3,T4,T5 >::item_
>
{
typedef set7 type;
@@ -105,7 +105,7 @@ template<
struct set8
: s_item<
T7
, set7< T0,T1,T2,T3,T4,T5,T6 >
, typename set7< T0,T1,T2,T3,T4,T5,T6 >::item_
>
{
typedef set8 type;
@@ -118,7 +118,7 @@ template<
struct set9
: s_item<
T8
, set8< T0,T1,T2,T3,T4,T5,T6,T7 >
, typename set8< T0,T1,T2,T3,T4,T5,T6,T7 >::item_
>
{
typedef set9 type;
@@ -131,7 +131,7 @@ template<
struct set10
: s_item<
T9
, set9< T0,T1,T2,T3,T4,T5,T6,T7,T8 >
, typename set9< T0,T1,T2,T3,T4,T5,T6,T7,T8 >::item_
>
{
typedef set10 type;

View File

@@ -20,7 +20,7 @@ template<
struct set11
: s_item<
T10
, set10< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9 >
, typename set10< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9 >::item_
>
{
typedef set11 type;
@@ -34,7 +34,7 @@ template<
struct set12
: s_item<
T11
, set11< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10 >
, typename set11< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10 >::item_
>
{
typedef set12 type;
@@ -48,7 +48,8 @@ template<
struct set13
: s_item<
T12
, set12< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11 >
, typename set12< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10
, T11 >::item_
>
{
typedef set13 type;
@@ -62,7 +63,8 @@ template<
struct set14
: s_item<
T13
, set13< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12 >
, typename set13< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12 >::item_
>
{
typedef set14 type;
@@ -76,7 +78,8 @@ template<
struct set15
: s_item<
T14
, set14< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13 >
, typename set14< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13 >::item_
>
{
typedef set15 type;
@@ -91,7 +94,8 @@ template<
struct set16
: s_item<
T15
, set15< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14 >
, typename set15< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14 >::item_
>
{
typedef set16 type;
@@ -106,7 +110,8 @@ template<
struct set17
: s_item<
T16
, set16< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15 >
, typename set16< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15 >::item_
>
{
typedef set17 type;
@@ -121,7 +126,8 @@ template<
struct set18
: s_item<
T17
, set17< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16 >
, typename set17< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16 >::item_
>
{
typedef set18 type;
@@ -136,7 +142,8 @@ template<
struct set19
: s_item<
T18
, set18< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17 >
, typename set18< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17 >::item_
>
{
typedef set19 type;
@@ -151,7 +158,8 @@ template<
struct set20
: s_item<
T19
, set19< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18 >
, typename set19< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18 >::item_
>
{
typedef set20 type;

View File

@@ -22,7 +22,8 @@ template<
struct set21
: s_item<
T20
, set20< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19 >
, typename set20< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19 >::item_
>
{
typedef set21 type;
@@ -38,7 +39,8 @@ template<
struct set22
: s_item<
T21
, set21< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20 >
, typename set21< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20 >::item_
>
{
typedef set22 type;
@@ -54,7 +56,8 @@ template<
struct set23
: s_item<
T22
, set22< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21 >
, typename set22< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21 >::item_
>
{
typedef set23 type;
@@ -70,7 +73,8 @@ template<
struct set24
: s_item<
T23
, set23< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22 >
, typename set23< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22 >::item_
>
{
typedef set24 type;
@@ -86,7 +90,8 @@ template<
struct set25
: s_item<
T24
, set24< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23 >
, typename set24< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23 >::item_
>
{
typedef set25 type;
@@ -103,7 +108,9 @@ template<
struct set26
: s_item<
T25
, set25< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24 >
, typename set25< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23
, T24 >::item_
>
{
typedef set26 type;
@@ -120,7 +127,9 @@ template<
struct set27
: s_item<
T26
, set26< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25 >
, typename set26< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24
, T25 >::item_
>
{
typedef set27 type;
@@ -137,7 +146,9 @@ template<
struct set28
: s_item<
T27
, set27< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26 >
, typename set27< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26 >::item_
>
{
typedef set28 type;
@@ -154,7 +165,9 @@ template<
struct set29
: s_item<
T28
, set28< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27 >
, typename set28< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27 >::item_
>
{
typedef set29 type;
@@ -171,7 +184,9 @@ template<
struct set30
: s_item<
T29
, set29< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28 >
, typename set29< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28 >::item_
>
{
typedef set30 type;

View File

@@ -24,7 +24,9 @@ template<
struct set31
: s_item<
T30
, set30< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29 >
, typename set30< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29 >::item_
>
{
typedef set31 type;
@@ -42,7 +44,9 @@ template<
struct set32
: s_item<
T31
, set31< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30 >
, typename set31< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30 >::item_
>
{
typedef set32 type;
@@ -60,7 +64,9 @@ template<
struct set33
: s_item<
T32
, set32< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31 >
, typename set32< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31 >::item_
>
{
typedef set33 type;
@@ -78,7 +84,9 @@ template<
struct set34
: s_item<
T33
, set33< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32 >
, typename set33< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32 >::item_
>
{
typedef set34 type;
@@ -96,7 +104,9 @@ template<
struct set35
: s_item<
T34
, set34< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33 >
, typename set34< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33 >::item_
>
{
typedef set35 type;
@@ -115,7 +125,9 @@ template<
struct set36
: s_item<
T35
, set35< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34 >
, typename set35< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34 >::item_
>
{
typedef set36 type;
@@ -134,7 +146,9 @@ template<
struct set37
: s_item<
T36
, set36< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35 >
, typename set36< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35 >::item_
>
{
typedef set37 type;
@@ -153,7 +167,9 @@ template<
struct set38
: s_item<
T37
, set37< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36 >
, typename set37< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36 >::item_
>
{
typedef set38 type;
@@ -172,7 +188,9 @@ template<
struct set39
: s_item<
T38
, set38< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37 >
, typename set38< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37 >::item_
>
{
typedef set39 type;
@@ -191,7 +209,10 @@ template<
struct set40
: s_item<
T39
, set39< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38 >
, typename set39< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37
, T38 >::item_
>
{
typedef set40 type;

View File

@@ -26,7 +26,10 @@ template<
struct set41
: s_item<
T40
, set40< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39 >
, typename set40< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38
, T39 >::item_
>
{
typedef set41 type;
@@ -46,7 +49,10 @@ template<
struct set42
: s_item<
T41
, set41< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40 >
, typename set41< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39
, T40 >::item_
>
{
typedef set42 type;
@@ -66,7 +72,10 @@ template<
struct set43
: s_item<
T42
, set42< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41 >
, typename set42< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39
, T40, T41 >::item_
>
{
typedef set43 type;
@@ -86,7 +95,10 @@ template<
struct set44
: s_item<
T43
, set43< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42 >
, typename set43< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39
, T40, T41, T42 >::item_
>
{
typedef set44 type;
@@ -106,7 +118,10 @@ template<
struct set45
: s_item<
T44
, set44< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43 >
, typename set44< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39
, T40, T41, T42, T43 >::item_
>
{
typedef set45 type;
@@ -127,7 +142,10 @@ template<
struct set46
: s_item<
T45
, set45< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44 >
, typename set45< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39
, T40, T41, T42, T43, T44 >::item_
>
{
typedef set46 type;
@@ -148,7 +166,10 @@ template<
struct set47
: s_item<
T46
, set46< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45 >
, typename set46< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39
, T40, T41, T42, T43, T44, T45 >::item_
>
{
typedef set47 type;
@@ -169,7 +190,10 @@ template<
struct set48
: s_item<
T47
, set47< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46 >
, typename set47< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39
, T40, T41, T42, T43, T44, T45, T46 >::item_
>
{
typedef set48 type;
@@ -190,7 +214,10 @@ template<
struct set49
: s_item<
T48
, set48< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47 >
, typename set48< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39
, T40, T41, T42, T43, T44, T45, T46, T47 >::item_
>
{
typedef set49 type;
@@ -211,7 +238,10 @@ template<
struct set50
: s_item<
T49
, set49< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48 >
, typename set49< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11
, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25
, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39
, T40, T41, T42, T43, T44, T45, T46, T47, T48 >::item_
>
{
typedef set50 type;

View File

@@ -50,9 +50,9 @@ namespace boost { namespace mpl {
#endif
template< typename Dummy = na > struct set0
{
typedef set0<> item_;
typedef aux::set_tag tag;
typedef void_ last_masked_;
typedef void_ item_type_;