x-engine-c v0.2.13
The C engine for x-lang
Loading...
Searching...
No Matches
ptr.h
Go to the documentation of this file.
1#ifndef X_TYPE_PTR_H
2#define X_TYPE_PTR_H
3
12/*
13 * ., .,
14 * {O,O}
15 * ( )
16 * " "
17 */
18
19#include "x-type.h"
20
21#define X_TYPE_PTR_NAME "POINTER"
26#define x_obj_type_isptr(B,X) x_obj_is_type((B), (X), X_TYPE_PTR_NAME)
32#define x_ptrval(X) x_firstptr((X))
38#define x_mkptr(B, P) x_make_ptr((B), X_OBJ_FLAG_NONE, (P))
40#define x_mkfptr(B, F, P) x_make_ptr((B), (F), (P))
42#define x_mkptrown(B, P) x_make_ptr((B), X_OBJ_FLAG_OWN, (P))
44#define x_mkfptrown(B, F, P) x_make_ptr((B), X_OBJ_FLAG_OWN | (F), (P))
48x_obj_t *x_make_ptr(x_obj_t *p_base, x_obj_flag_t flags, void *p);
49
56
57#endif /* X_TYPE_PTR_H */
static void x_obj_t * p_args
Definition x-prim.h:56
x_obj_t * x_type_ptr_make(x_obj_t *p_base, x_obj_t *p_args)
Definition ptr.c:105
x_obj_t * x_type_ptr_struct(x_obj_t *p_base, x_obj_t *p_args)
Definition ptr.c:65
x_obj_t * x_type_ptr_register(x_obj_t *p_base, x_obj_t *p_args)
Definition ptr.c:85
x_obj_t * x_make_ptr(x_obj_t *p_base, x_obj_flag_t flags, void *p)
Definition ptr.c:32
Definition x-obj.h:212
enum x_obj_flag_enum x_obj_flag_t
Type system field accessors and type struct definition.