26#if ! defined (octave_lo_traits_h)
27#define octave_lo_traits_h 1
29#include "octave-config.h"
37template <
bool cond,
typename T1,
typename T2>
40template <
typename T1,
typename T2>
48template <
typename T1,
typename T2>
57template <
typename T1,
typename T2>
62 static const bool value =
false;
75template <
template <
typename>
class Template,
typename T>
80 static const bool value =
false;
83template <
template <
typename>
class Template,
typename T>
99 typedef struct {
char c[2]; }
two;
109 enum {
yes =
sizeof (is_class_type_test<T1> (0)) == 1 };
127template <
template <
typename>
class TemplatedClass,
typename T>
134template <
template <
typename>
class TemplatedClass,
typename T>
144template <
template <
typename>
class TemplatedClass,
typename T,
typename S>
151template <
template <
typename>
class TemplatedClass,
typename T,
typename S>
155 typedef TemplatedClass<S>
type;
static two is_class_type_test(...)
static one is_class_type_test(int T2::*)
if_then_else< is_class_type< T >::no, T, Tconst & >::result type