1 #ifndef __JLANG__JENUMERATION__
2 #define __JLANG__JENUMERATION__
17 namespace JPP {
using namespace JLANG; }
24 template<
class T,
int ID>
34 template<
class JHead_t,
class JTail_t,
int ID>
80 static std::ostream&
print(std::ostream& out)
82 out << getLabel(JType<T>()) << std::endl;
95 template<
class JHead_t,
class JTail_t>
99 public virtual JAssert<!JHasType<JTail_t, JHead_t> ::value &&
100 !JHasID <JTail_t, JTypeID<JHead_t>::ID>::value>
112 static std::ostream&
print(std::ostream& out)
125 template<
class JHead_t>
Auxiliary classes and methods for language specific functionality.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Generation of compiler error.
static std::ostream & print(std::ostream &out)
Print enumeration.
Enumeration of single data type.
static JLabel_t getLabel(const T &object)
Get label of given object.
static std::ostream & print(std::ostream &out)
Print enumeration.
static JLabel_t getLabel(const JType< T > &type)
Get label of given data type.
Test presence of data type identifier in labelled type list.
Auxiliary data structure to label data types within a type list.
Auxiliary class for no type definition.
Auxiliary class for a type holder.
Template definition of policy class to label data types in a type list.