19#ifndef X_TYPE_ITER_NAME
20#define X_TYPE_ITER_NAME "ITER"
26#define x_obj_type_isiter(B,X) x_obj_is_type((B), (X), X_TYPE_ITER_NAME)
37#define x_iterprim(X) x_firstobj((X))
38#define x_iterval(X) x_restobj((X))
39#define x_iterempty(B,X) x_obj_isnil((B), x_iterval(X))
44#define x_mkiter(B, FN, L) x_make_iter((B), X_OBJ_FLAG_NONE, (FN), (L))
45#define x_mkfiter(B, F, FN, L) x_make_iter((B), (F), (FN), (L))
static void x_obj_t * p_args
Definition x-prim.h:56
x_obj_t * x_type_iter_step(x_obj_t *p_base, x_obj_t *p_args)
Definition iter.c:172
x_obj_t * x_type_iter_next(x_obj_t *p_base, x_obj_t *p_args)
Definition iter.c:127
x_obj_t * x_type_iter_struct(x_obj_t *p_base, x_obj_t *p_args)
Definition iter.c:54
x_obj_t * x_make_iter(x_obj_t *p_base, x_obj_flag_t flags, void *p1, void *p2)
Definition iter.c:35
x_obj_t * x_type_iter_make(x_obj_t *p_base, x_obj_t *p_args)
Definition iter.c:97
x_obj_t * x_type_iter_register(x_obj_t *p_base, x_obj_t *p_args)
Definition iter.c:78
enum x_obj_flag_enum x_obj_flag_t
Type system field accessors and type struct definition.