59 #ifndef LIB_META_GENERATOR_H 60 #define LIB_META_GENERATOR_H 77 ,
template<
class>
class _X_
78 ,
class BASE = NullType
83 template<
template<
class>
class _X_,
class BASE>
94 <
class TY,
typename TYPES
95 ,
template<
class>
class _X_
103 typedef _X_<TY> Unit;
126 ,
template<
class,
class>
class _X_
132 template<
template<
class,
class>
class _X_,
class BASE>
143 <
class TY,
typename TYPES
144 ,
template<
class,
class>
class _X_
149 , InstantiateChained<TYPES, _X_, BASE>
154 typedef _X_<TY,Next> Unit;
170 ,
template<
class,
class,u
int>
class _X_
177 template<
template<
class,
class,u
int>
class _X_
192 <
class TY,
typename TYPES
193 ,
template<
class,
class,u
int>
class _X_
199 , InstantiateWithIndex<TYPES, _X_, BASE, i+1 >
205 typedef _X_<TY,Next,i> Unit;
206 enum{ COUNT = Next::COUNT };
A template metaprogramming technique for manipulating collections of types.
Implementation namespace for support and library code.