diff options
author | Mikael Djurfeldt <djurfeldt@nada.kth.se> | 2000-08-09 18:29:39 +0000 |
---|---|---|
committer | Mikael Djurfeldt <djurfeldt@nada.kth.se> | 2000-08-09 18:29:39 +0000 |
commit | 85c213397849c01a9a52c3cd20ac4e0dc4f9d3bd (patch) | |
tree | e761dc2ea9753377f14ce70e95998f076efcacd6 /libguile/struct.h | |
parent | 08c880a36746289330f3722522960ea21fe4ddc8 (diff) | |
download | guile-85c213397849c01a9a52c3cd20ac4e0dc4f9d3bd.tar.gz |
* struct.h (SCM_STRUCT_GC_CHAIN, SCM_SET_STRUCT_GC_CHAIN): New
macros.
(scm_structs_to_free, scm_struct_prehistory): Declare.
Diffstat (limited to 'libguile/struct.h')
-rw-r--r-- | libguile/struct.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libguile/struct.h b/libguile/struct.h index 623c82bf9..b78f9a7f9 100644 --- a/libguile/struct.h +++ b/libguile/struct.h @@ -97,6 +97,10 @@ typedef scm_sizet (*scm_struct_free_t) (scm_bits_t * vtable, scm_bits_t * data); #define SCM_SET_STRUCT_TABLE_CLASS(X, CLASS) SCM_SETCDR (X, CLASS) extern SCM scm_struct_table; +#define SCM_STRUCT_GC_CHAIN(X) SCM_CELL_OBJECT_3 (X) +#define SCM_SET_STRUCT_GC_CHAIN(X, Y) SCM_SET_CELL_OBJECT_3 (X, Y) +extern SCM scm_structs_to_free; + extern scm_bits_t * scm_alloc_struct (int n_words, int n_extra, char * who); @@ -118,6 +122,7 @@ extern SCM scm_struct_create_handle (SCM obj); extern SCM scm_struct_vtable_name (SCM vtable); extern SCM scm_set_struct_vtable_name_x (SCM vtable, SCM name); extern void scm_print_struct (SCM exp, SCM port, scm_print_state *); +extern void scm_struct_prehistory (void); extern void scm_init_struct (void); #endif /* STRUCTH */ |