Inside: PLT Scheme C API

1`` | Overview
2`` | Values and Types
3`` | Memory Allocation
4`` | Namespaces and Modules
5`` | Procedures
6`` | Evaluation
7`` | Exceptions and Escape Continuations
8`` | Threads
9`` | Parameterizations
10`` | Continuation Marks
11`` | String Encodings
12`` | Bignums, Rationals, and Complex Numbers
13`` | Ports and the Filesystem
14`` | Structures
15`` | Security Guards
16`` | Custodians
17`` | Miscellaneous Utilities
18`` | Flags and Hooks
| Index

Version: 4.0.2
contents index
← prev up next →

### 10`` Continuation Marks

A mark can be attached to the current continuation frame using scheme_set_cont_mark. To force the creation of a new frame (e.g., during a nested function call within your function), use scheme_push_continuation_frame, and then remove the frame with scheme_pop_continuation_frame.

void |  | scheme_set_cont_mark | ( | Scheme_Object* key,
|  |  |  | Scheme_Object* val)

Add/sets a continuation mark in the current continuation.

void |  | scheme_push_continuation_frame | ( | Scheme_Cont_Frame_Data* data)

Creates a new continuation frame. The data record need not be initialized, and it can be allocated on the C stack. Supply data to scheme_pop_continuation_frame to remove the continuation frame.

void |  | scheme_pop_continuation_frame | ( | Scheme_Cont_Frame_Data* data)

Removes a continuation frame created by scheme_pop_continuation_frame.

contents index
← prev up next →