19 #if SIZEOF_UNSIGNED_CHAR == 1
20 typedef unsigned char uint8;
21 #elif SIZEOF_UNSIGNED_SHORT == 1
22 typedef unsigned short uint8;
23 #elif SIZEOF_UNSIGNED_INT == 1
24 typedef unsigned int uint8;
25 #elif SIZEOF_UNSIGNED_LONG == 1
26 typedef unsigned long uint8;
27 #elif SIZEOF_UNSIGNED_LONG_LONG == 1
28 typedef unsigned long long uint8;
30 # error *** ERROR: No 8-bit type found to use as uint8
40 #if SIZEOF_UNSIGNED_CHAR == 2
41 typedef unsigned char uint16;
42 #elif SIZEOF_UNSIGNED_SHORT == 2
43 typedef unsigned short uint16;
44 #elif SIZEOF_UNSIGNED_INT == 2
45 typedef unsigned int uint16;
46 #elif SIZEOF_UNSIGNED_LONG == 2
47 typedef unsigned long uint16;
48 #elif SIZEOF_UNSIGNED_LONG_LONG == 2
49 typedef unsigned long long uint16;
51 # error *** ERROR: No 16-bit type found to use as uint16
61 #if SIZEOF_UNSIGNED_CHAR == 4
62 typedef unsigned char uint32;
63 #elif SIZEOF_UNSIGNED_SHORT == 4
64 typedef unsigned short uint32;
65 #elif SIZEOF_UNSIGNED_INT == 4
66 typedef unsigned int uint32;
67 #elif SIZEOF_UNSIGNED_LONG == 4
68 typedef unsigned long uint32;
69 #elif SIZEOF_UNSIGNED_LONG_LONG == 4
70 typedef unsigned long long uint32;
72 # error *** ERROR: No 32-bit type found to use as uint32
82 #if SIZEOF_UNSIGNED_CHAR == 8
83 typedef unsigned char uint64;
84 #elif SIZEOF_UNSIGNED_SHORT == 8
85 typedef unsigned short uint64;
86 #elif SIZEOF_UNSIGNED_INT == 8
87 typedef unsigned int uint64;
88 #elif SIZEOF_UNSIGNED_LONG == 8
89 typedef unsigned long uint64;
90 #elif SIZEOF_UNSIGNED_LONG_LONG == 8
91 typedef unsigned long long uint64;
93 # error *** ERROR: No 64-bit type found to use as uint64
264 bool is_bool(
const bool& a_arg);
301 {
return(
"unknown"); }
304 const char *
type_name(
const unsigned char & a_arg);
308 const char *
type_name(
const char & a_arg);
312 const char *
type_name(
const unsigned short & a_arg);
316 const char *
type_name(
const short & a_arg);
320 const char *
type_name(
const unsigned int & a_arg);
324 const char *
type_name(
const int & a_arg);
328 const char *
type_name(
const unsigned long & a_arg);
332 const char *
type_name(
const long & a_arg);
336 const char *
type_name(
const unsigned long long & a_arg);
340 const char *
type_name(
const long long & a_arg);
344 const char *
type_name(
const float & a_arg);
348 const char *
type_name(
const double & a_arg);
352 const char *
type_name(
const bool & a_arg);
static bool is_signed_short(const T &a_arg)
Return false for any variable that is not a short.
static bool is_long_long(const T &a_arg)
Return true for any variable that is either a signed or unsigned long long.
static bool is_double(const T &a_arg)
Return false for any variable that is not a double.
static bool is_unsigned_long(const T &a_arg)
Return false for any variable that is not an unsigned long.
static bool is_unsigned_short(const T &a_arg)
Return false for any variable that is not an unsigned short.
static bool is_unsigned(const T &a_arg)
Return true for any variable that is an unsigned type.
static bool is_long(const T &a_arg)
Return true for any variable that is either a signed or unsigned long.
static bool is_signed_char(const T &a_arg)
Return false for any variable that is not a char.
static bool is_unsigned_long_long(const T &a_arg)
Return false for any variable that is not an unsigned long long.
static bool is_signed_int(const T &a_arg)
Return false for any variable that is not a int.
static bool is_unsigned_int(const T &a_arg)
Return false for any variable that is not an unsigned int.
static bool is_unsigned_char(const T &a_arg)
Return false for any variable that is not an unsigned char.
static bool is_short(const T &a_arg)
Return true for any variable that is either a signed or unsigned short.
static bool is_signed(const T &a_arg)
Return true for any variable that is a signed type.
static bool is_signed_long(const T &a_arg)
Return false for any variable that is not a long.
static bool is_signed_long_long(const T &a_arg)
Return false for any variable that is not a long long.
static bool is_char(const T &a_arg)
Return true for any variable that is either a signed or unsigned char.
static bool is_int(const T &a_arg)
Return true for any variable that is either a signed or unsigned int.
static bool is_float(const T &a_arg)
Return false for any variable that is not a float.
static bool is_bool(const T &a_arg)
Return false for any variable that is not a bool.
static const char * type_name(const T &a_arg)