Go to the documentation of this file. 1 #ifndef __JLANG__JTYPELIST__
2 #define __JLANG__JTYPELIST__
13 namespace JPP {
using namespace JLANG; }
21 template<
class JHead_t = JNullType,
class JTail_t = JNullType>
32 template<
unsigned int N,
class T>
60 template<
class JHead_t,
class JTail_t>
90 template<
class JHead_t,
class JTail_t>
100 template<
class JHead_t,
class JTail_t,
class T>
113 template<
class JTypelist_t,
class T>
130 template<
class T,
class JTail_t>
140 template<
class JHead_t,
class JTail_t,
class T>
150 template<
class JHead_t1,
class JTail_t1,
class JHead_t2,
class JTail_t2>
162 template<
class JHead_t1,
class JTail_t1,
class JHead_t2>
176 template<
class JTypeList_t>
struct JLength {};
182 template<
class JHead_t,
class JTail_t>
202 template<
class JTypeList_t,
class T>
209 template<
class JHead_t,
class JTail_t,
class T>
219 template<
class JTail_t,
class T>
222 enum { value =
true };
232 enum { value =
false };
242 enum { value =
true };
259 template<
class JHead_t,
class JTail_t>
272 template<
class JTypelist_t,
unsigned int index,
bool range_check = true>
279 template<
class JHead_t,
class JTail_t,
unsigned int index,
bool range_check>
289 template<
class JHead_t,
class JTail_t,
bool range_check>
299 template<
unsigned int index>
309 template<
class JTypeList_t,
class T>
316 template<
class JHead_t,
class JTail_t,
class T>
323 enum { value = (tmp == -1 ? -1 : tmp + 1) };
330 template<
class JTail_t,
class T>
379 typedef JTypeList<A, typename JTYPELIST<B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z>::typelist>
typelist;
386 template<
class JHead_t,
413 struct JTYPELIST<
JTypeList<JHead_t, JTail_t>,B,
C,D,E,F,G,
H,I,J,
K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z>
415 typedef JTypeList<JHead_t, typename JTYPELIST<JTail_t,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z>::typelist>
typelist;
447 struct JTYPELIST<
JNullType,B,
C,D,E,F,G,
H,I,J,
K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z>
449 typedef typename JTYPELIST<B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z>::typelist typelist;
526 template<
class JHead_t,
class JTail_t>
571 template<
class JObject_t,
class JHead_t,
class JTail_t>
594 template<
class JObject_t,
class T>
610 template<
class JObject_t>
JTypeList< JHead_t, JTail_t > typelist
Auxiliary class for a type holder.
Removal of data type from type list.
JTypeList< A, typename JTYPELIST< B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z >::typelist > typelist
JTypeList< JHead_t, JTail_t > typelist
Auxiliary class for no type definition.
Auxiliary class for recursive type list generation.
JTypeList< T, JNullType > typelist
JLANG::JTYPELIST< JTypeList< JHead_t, JTail_t >, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z >::typelist JTypeList< JHead_t, typename JTYPELIST< JTail_t, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z >::typelist > typelist
JLANG::JTYPELIST< JNullType, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z >::typelist JTYPELIST< B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z >::typelist typelist
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
JRemove< JTypeList< JHead_t1, JTail_t1 >, JHead_t2 >::typelist typelist
Indexing of data type in type list.
static const uint32_t K[64]
JLANG::JTYPELIST< A, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType >::typelist JTypeList< A > typelist
Resolve template class to JTypeList.
JTypeList< JHead_t, JTail_t > typelist
JLANG::JTYPELIST< JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType >::typelist JTypeList typelist
JTypeList< JHead_t, typename JAppend< JTail_t, T >::typelist > typelist
JLANG::JTYPELIST< JTypeList< JHead_t, JTail_t >, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType, JNullType >::typelist JTypeList< JHead_t, JTail_t > typelist
JObject_t & for_each(JObject_t &object, JType< JNullType > type)
Termination method of for each data type method.
Extraction of data type from type list.
JTypeAt< JTail_t, index - 1, range_check >::value_type value_type
JTypeList< T, typename JMultipleType< N-1, T >::typelist > typelist
Auxiliary classes and methods for language specific functionality.
JRemove< typename JRemove< JTypeList< JHead_t1, JTail_t1 >, JHead_t2 >::typelist, JTail_t2 >::typelist typelist
JTypeList< JHead_t, typename JRemove< JTail_t, T >::typelist > typelist
Test presence of data type in type list.