src/sub.c - Subroutines


Subroutines, continuations, co-routines and other fun stuff...

Functions ^

void mark_context

Marks the context *ctx.

Parrot_sub *new_sub

Returns a new Parrot_sub.

Parrot_sub *new_closure

Returns a new Parrot_sub with its own sctatchpad.

XXX: Need to document semantics in detail.

Parrot_cont *new_continuation

Returns a new Parrot_cont to the context of to with its own copy of the current interpreter context. If to is NULL, then the to_ctx is set to the current context.

Parrot_cont *new_ret_continuation

Returns a new Parrot_cont pointing to the current context.

Parrot_coro *new_coroutine

Returns a new Parrot_coro.

XXX: Need to document semantics in detail.

PMC *new_ret_continuation_pmc

Returns a new RetContinuation PMC. Uses one from the cache, if possible; otherwise, creates a new one.

void invalidate_retc_context

Make true Continuations from all RetContinuations up the call chain.

STRING *Parrot_full_sub_name

Return namespace, name, and location of subroutine.

int Parrot_Context_get_info

RT#48260: Not yet documented!!!

STRING *Parrot_Context_infostr

RT#48260: Not yet documented!!!

PMC *Parrot_find_pad

Locate the LexPad containing the given name. Return NULL on failure.

PMC *parrot_new_closure

RT#48260: Not yet documented!!!




Initial version by Melvin on 2002/06/6.