|
x-engine-c v0.2.13
The C engine for x-lang
|
Integer type implementation. More...
Functions | |
| x_obj_t * | x_make_int (x_obj_t *p_base, x_obj_flag_t flags, x_int_t i) |
| x_obj_t * | x_type_int_save (x_obj_t *p_base, x_obj_t *p_args) |
| x_obj_t * | x_type_int_struct (x_obj_t *p_base, x_obj_t *p_obj) |
| x_obj_t * | x_type_int_register (x_obj_t *p_base, x_obj_t *p_args) |
| x_obj_t * | x_type_int_make (x_obj_t *p_base, x_obj_t *p_args) |
Variables | |
| x_satom_t | x_type_int_name = x_obj_set(x_type_atom_obj, X_OBJ_FLAG_NONE, { .s = (x_char_t *)X_TYPE_INT_NAME }) |
| x_satom_t | x_type_int_make_prim = x_obj_set(x_type_atom_obj, X_OBJ_FLAG_NONE, { (x_obj_t *)&x_type_int_make }) |
| x_satom_t | x_type_int_struct_prim = x_obj_set(x_type_atom_obj, X_OBJ_FLAG_NONE, { (x_obj_t *)&x_type_int_struct }) |
| x_satom_t | x_type_int_save_prim = x_obj_set(x_type_atom_obj, X_OBJ_FLAG_NONE, { (x_obj_t *)&x_type_int_save }) |
Integer type implementation.
| x_obj_t * x_make_int | ( | x_obj_t * | p_base, |
| x_obj_flag_t | flags, | ||
| x_int_t | i | ||
| ) |
Allocate a heap integer object with a given value.
Builds a stack-based argument list and delegates to x_type_int_make.
| p_base | x_obj_t* – Base (execution context) |
| flags | x_obj_flag_t – Object flags |
| i | x_int_t – Integer value |
Type-system make callback for integer objects.
Extracts the integer value and optional flags from p_args, then allocates a heap object via x_obj_make.
| p_base | x_obj_t* – Base (execution context) |
| p_args | x_obj_t* – (int-value . (flags | nil)) |
Register or retrieve the integer type on the base context.
| p_base | x_obj_t* – Base (execution context) |
| p_args | x_obj_t* – Unused |
Build the integer type descriptor struct.
Populates name, make, analyse, read, and write callbacks.
| p_base | x_obj_t* – Base (execution context) |
| p_obj | x_obj_t* – Unused |
Build the integer type descriptor struct.
| x_satom_t x_type_int_make_prim = x_obj_set(x_type_atom_obj, X_OBJ_FLAG_NONE, { (x_obj_t *)&x_type_int_make }) |
| x_satom_t x_type_int_name = x_obj_set(x_type_atom_obj, X_OBJ_FLAG_NONE, { .s = (x_char_t *)X_TYPE_INT_NAME }) |
| x_satom_t x_type_int_save_prim = x_obj_set(x_type_atom_obj, X_OBJ_FLAG_NONE, { (x_obj_t *)&x_type_int_save }) |
| x_satom_t x_type_int_struct_prim = x_obj_set(x_type_atom_obj, X_OBJ_FLAG_NONE, { (x_obj_t *)&x_type_int_struct }) |