1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- typedef enum {
- SCM_WEAK_TABLE_KIND_KEY,
- SCM_WEAK_TABLE_KIND_VALUE,
- SCM_WEAK_TABLE_KIND_BOTH,
- } scm_t_weak_table_kind;
- typedef int (*scm_t_table_predicate_fn) (SCM k, SCM v, void *closure);
- typedef SCM (*scm_t_table_fold_fn) (void *closure, SCM k, SCM v, SCM result)
- SCM_INTERNAL SCM scm_c_make_weak_table (unsigned long k,
- scm_t_weak_table_kind kind)
- SCM_INTERNAL SCM scm_weak_table_p (SCM h)
- SCM_INTERNAL SCM scm_c_weak_table_ref (SCM table, unsigned long raw_hash,
- scm_t_table_predicate_fn pred,
- void *closure, SCM dflt)
- SCM_INTERNAL void scm_c_weak_table_put_x (SCM table, unsigned long raw_hash,
- scm_t_table_predicate_fn pred,
- void *closure, SCM key, SCM value)
- SCM_INTERNAL void scm_c_weak_table_remove_x (SCM table, unsigned long raw_hash,
- scm_t_table_predicate_fn pred,
- void *closure);
- SCM_INTERNAL SCM scm_weak_table_refq (SCM table, SCM key, SCM dflt)
- SCM_INTERNAL void scm_weak_table_putq_x (SCM table, SCM key, SCM value)
- SCM_INTERNAL void scm_weak_table_remq_x (SCM table, SCM key)
- SCM_INTERNAL void scm_weak_table_clear_x (SCM table)
- SCM_INTERNAL SCM scm_c_weak_table_fold (scm_t_table_fold_fn proc, void *closure,
- SCM init, SCM table)
- SCM_INTERNAL SCM scm_weak_table_fold (SCM proc, SCM init, SCM table)
- SCM_INTERNAL void scm_weak_table_for_each (SCM proc, SCM table)
- SCM_INTERNAL SCM scm_weak_table_map_to_list (SCM proc, SCM table)
- SCM_API SCM scm_make_weak_key_hash_table (SCM k)
- SCM_API SCM scm_make_weak_value_hash_table (SCM k)
- SCM_API SCM scm_make_doubly_weak_hash_table (SCM k)
- SCM_API SCM scm_weak_key_hash_table_p (SCM h)
- SCM_API SCM scm_weak_value_hash_table_p (SCM h)
- SCM_API SCM scm_doubly_weak_hash_table_p (SCM h)
- SCM_INTERNAL void scm_i_weak_table_print (SCM exp, SCM port, scm_print_state *pstate)
- SCM_INTERNAL void scm_weak_table_prehistory (void)
- SCM_INTERNAL void scm_init_weak_table (void)
|