Go to the documentation of this file. 1 #ifndef __JLANG__JTEMPLATEWRITER__
2 #define __JLANG__JTEMPLATEWRITER__
16 namespace JPP {
using namespace JLANG; }
26 template<
class JWriter_t,
35 template<
class JWriter_t>
47 template<
class JClass_t>
48 static inline JWriter_t&
write(JWriter_t& out,
49 const JClass_t&
object,
64 template<
class JClass_t,
class JHead_t,
class JTail_t>
65 static inline JWriter_t&
write(JWriter_t& out,
66 const JClass_t&
object,
69 out << static_cast<const JHead_t&>(
object);
87 template<
class JClass_t,
class JHead_t>
88 static inline JWriter_t&
write(JWriter_t& out,
89 const JClass_t&
object,
92 return out << static_cast<const JHead_t&>(
object);
103 template<
class JWriter_t>
119 template<
class JWriter_t,
class JClass_t,
class JHead_t,
class JTail_t>
130 friend JWriter_t&
operator<<(JWriter_t& out,
const JClass_t&
object)
Auxiliary class for a type holder.
static JWriter_t & write(JWriter_t &out, const JClass_t &object, const JType< JNullType > &type)
Write method for single data types.
Auxiliary class for no type definition.
static JWriter_t & write(JWriter_t &out, const JClass_t &object, const JType< JTypeList< JHead_t, JTail_t > > &type)
Write method for composite data types.
static JWriter_t & write(JWriter_t &out, const JClass_t &object, const JType< JTypeList< JHead_t, JNullType > > &type)
Write method for composite data types.
Template definition of auxiliary base class for composite data types which derive from one or more ba...
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
friend JWriter_t & operator<<(JWriter_t &out, const JClass_t &object)
Write operator.
const char * WHITE_SPACE
Specialisation of white space for std::ostream.
static const char * WHITE_SPACE
White space between consecutive items in a type list.
Auxiliary classes and methods for language specific functionality.