NAME ^

src/classes/coroutine.pmc - Co-Routine PMC

DESCRIPTION ^

Coroutine extends Continuation to provide a subroutine that can stop in the middle, and start back up later at the point at which it stopped. See the Glossary for more information.

Flags ^

private0 call flip flop

private3 restore current sub after "flop". Used by generators.

Methods ^

void init()

Initializes the co-routine.

PMC *clone()

Clone the couroutine.

void *invoke(void *next)

Swaps the "context".

void mark()

Marks the coroutine as live.

HISTORY ^

Initial version by Melvin on 2002/06/6.


parrot