Data Structures | |
union | cu_box_t |
Defines | |
#define | CU_BOX_SIZE CU_WORD_SIZE |
#define | CU_BOX_FITS_FLOAT 1 |
#define | CU_BOX_FITS_DOUBLE 1 |
#define | CU_BOX_FITS_LONGDOUBLE |
#define | CU_BOX_GNEW_TEMPLATE(fn, type) |
#define | cu_box_gnew(type, obj) cu_box_galloc(sizeof(type), &(obj)) |
#define | cu_box_void() cuP_box_word(0) |
#define | CU_BOX_VOID_INIT CUP_BOX_WORD_INIT(0) |
Functions | |
cu_box_t | cu_box_galloc (size_t size, void *addr) |
Integer Types | |
| |
cu_box_t | cu_box_int (int i) |
int | cu_unbox_int (cu_box_t box) |
cu_box_t | cu_box_uint (unsigned int i) |
unsigned int | cu_unbox_uint (cu_box_t box) |
cu_box_t | cu_box_long (long i) |
long | cu_unbox_long (cu_box_t box) |
cu_box_t | cu_box_ulong (unsigned long i) |
unsigned long | cu_unbox_ulong (cu_box_t box) |
Floating Point Types | |
| |
cu_box_t | cu_box_float (float x) |
float | cu_unbox_float (cu_box_t box) |
cu_box_t | cu_box_double (double x) |
double | cu_unbox_double (cu_box_t box) |
cu_box_t | cu_box_longdouble (long double x) |
long double | cu_unbox_longdouble (cu_box_t box) |
Pointers, Functions, and Enums | |
| |
#define | cu_box_ptr(type, ptr) cuP_box_ptr(1? (ptr) : (type)(ptr)) |
#define | cu_unbox_ptr(type, box) ((type)cuP_unbox_ptr(box)) |
#define | CU_BOX_PTR_INIT(type, ptr) CUP_BOX_PTR_INIT(1? (ptr) : (type)(ptr)) |
#define | CU_BOX_NULL_PTR_INIT CUP_BOX_PTR_INIT(NULL) |
#define | cu_box_fptr(type, fp) cuP_box_fptr((cu_fnptr_t)(1? (fp) : (type)(fp))) |
#define | cu_unbox_fptr(type, box) ((type)cuP_unbox_fptr(box)) |
#define | CU_BOX_FPTR_INIT(type, fptr) CUP_BOX_FPTR_INIT(1? (fptr) : (type)(fptr)) |
#define | CU_BOX_NULL_FPTR_INIT CUP_BOX_FPTR_INIT(NULL) |
#define | cu_box_clop(type, cp) cu_box_ptr(type, cp) |
#define | cu_unbox_clop(type, box) cu_unbox_ptr(type, box) |
#define | cu_box_enum(type, i) cuP_box_word(1? (i) : (type)(i)) |
#define | cu_unbox_enum(type, box) ((type)cuP_unbox_word(box)) |
#define | CU_BOX_ENUM_INIT(type, i) CUP_BOX_WORD_INIT(1? (i) : (type)(i)) |
#define cu_box_clop | ( | type, | |||
cp | ) | cu_box_ptr(type, cp) |
Boxes a closure pointer of the specified type.
#define cu_box_enum | ( | type, | |||
i | ) | cuP_box_word(1? (i) : (type)(i)) |
Boxes an enum of the given type.
#define CU_BOX_ENUM_INIT | ( | type, | |||
i | ) | CUP_BOX_WORD_INIT(1? (i) : (type)(i)) |
An initialiser for a box if enum type type.
#define cu_box_fptr | ( | type, | |||
fp | ) | cuP_box_fptr((cu_fnptr_t)(1? (fp) : (type)(fp))) |
Boxes a function pointer of the specified type.
#define CU_BOX_FPTR_INIT | ( | type, | |||
fptr | ) | CUP_BOX_FPTR_INIT(1? (fptr) : (type)(fptr)) |
An initialiser for a function pointer box.
#define CU_BOX_GNEW_TEMPLATE | ( | fn, | |||
type | ) |
#define CU_BOX_NULL_FPTR_INIT CUP_BOX_FPTR_INIT(NULL) |
A NULL
function pointer box initialiser.
#define CU_BOX_NULL_PTR_INIT CUP_BOX_PTR_INIT(NULL) |
A NULL
pointer box initialiser.
#define cu_box_ptr | ( | type, | |||
ptr | ) | cuP_box_ptr(1? (ptr) : (type)(ptr)) |
Boxes a pointer of the specified type.
#define CU_BOX_PTR_INIT | ( | type, | |||
ptr | ) | CUP_BOX_PTR_INIT(1? (ptr) : (type)(ptr)) |
An initialiser for a pointer box.
#define cu_unbox_clop | ( | type, | |||
box | ) | cu_unbox_ptr(type, box) |
Unboxes a closure pointer of the specified type.
#define cu_unbox_enum | ( | type, | |||
box | ) | ((type)cuP_unbox_word(box)) |
Unboxes an enum of the given type.
#define cu_unbox_fptr | ( | type, | |||
box | ) | ((type)cuP_unbox_fptr(box)) |
Unboxes a function pointer of the specified type.
#define cu_unbox_ptr | ( | type, | |||
box | ) | ((type)cuP_unbox_ptr(box)) |
Unboxes a pointer of the specified type.
cu_box_t cu_box_float | ( | float | x | ) |
Boxes a float
.
cu_box_t cu_box_int | ( | int | i | ) |
Boxes an int
or any shorter integer types.
cu_box_t cu_box_long | ( | long | i | ) |
Boxes a long
.
cu_box_t cu_box_longdouble | ( | long double | x | ) |
Boxes a long double
.
cu_box_t cu_box_uint | ( | unsigned int | i | ) |
Boxes an unsigned int
or any shorter unsigned integer type.
cu_box_t cu_box_ulong | ( | unsigned long | i | ) |
Boxes an unsigned long
.
float cu_unbox_float | ( | cu_box_t | box | ) |
Unboxes a float
.
int cu_unbox_int | ( | cu_box_t | box | ) |
Unboxes an int
or any shorter integer type.
long cu_unbox_long | ( | cu_box_t | box | ) |
Unboxes a long
.
long double cu_unbox_longdouble | ( | cu_box_t | box | ) |
Unboxes a long double
.
unsigned int cu_unbox_uint | ( | cu_box_t | box | ) |
Unboxes an unsigned int
or any shorter unsigned integer type.
unsigned long cu_unbox_ulong | ( | cu_box_t | box | ) |
Unboxes an unsigned long
.