generator

generator

Functions

Types and Values

Description

Functions

generator_state_ ()

struct generator_ *
generator_state_ (const void *ret);

generator_argp_ ()

void *
generator_argp_ (const void *ret);

generator_rtype_()

#define             generator_rtype_(gen_)

generator_new_ ()

void *
generator_new_ (void (*fn) (void *),
                size_t retsize);

generator_free_ ()

void
generator_free_ (void *ret,
                 size_t retsize);

generator_t()

#define             generator_t(rtype_)

generator_declare()

#define             generator_declare(name_, rtype_, ...)

generator_parm_()

#define generator_parm_(t_, n_)			t_ n_

generator_parms_()

#define             generator_parms_(...)

generator_parms_inner_()

#define             generator_parms_inner_(...)

generator_parms_outer_()

#define             generator_parms_outer_(...)

generator_argfield_()

#define generator_argfield_(t_, n_)		t_ n_;

generator_argstruct_()

#define             generator_argstruct_(...)

generator_arg_unpack_()

#define generator_arg_unpack_(t_, n_)		args->n_

generator_args_unpack_()

#define             generator_args_unpack_(...)

generator_arg_pack_()

#define generator_arg_pack_(t_, n_)		args->n_ = n_

generator_args_pack_()

#define             generator_args_pack_(...)

generator_def_()

#define             generator_def_(name_, rtype_, storage_, ...)

generator_def()

#define             generator_def(name_, rtype_, ...)

generator_def_static()

#define             generator_def_static(name_, rtype_, ...)

generator_yield()

#define             generator_yield(val_)

generator_next_ ()

void *
generator_next_ (void *ret_);

generator_next()

#define             generator_next(gen_)

generator_next_val()

#define             generator_next_val(val_, gen_)

generator_free()

#define             generator_free(gen_)

Types and Values

struct generator_

struct generator_ {
	struct coroutine_state gen;
	struct coroutine_state caller;
	bool complete;
	void *base;
};

struct generator_incomplete_

struct generator_incomplete_;