Warning: This is the manual of the legacy Guile 2.0 series. You may want to read the manual of the current stable series instead.

Next: , Up: Weak References   [Contents][Index]


6.18.3.1 Weak hash tables

Scheme Procedure: make-weak-key-hash-table [size]
Scheme Procedure: make-weak-value-hash-table [size]
Scheme Procedure: make-doubly-weak-hash-table [size]
C Function: scm_make_weak_key_hash_table (size)
C Function: scm_make_weak_value_hash_table (size)
C Function: scm_make_doubly_weak_hash_table (size)

Return a weak hash table with size buckets. As with any hash table, choosing a good size for the table requires some caution.

You can modify weak hash tables in exactly the same way you would modify regular hash tables. (see Hash Tables)

Scheme Procedure: weak-key-hash-table? obj
Scheme Procedure: weak-value-hash-table? obj
Scheme Procedure: doubly-weak-hash-table? obj
C Function: scm_weak_key_hash_table_p (obj)
C Function: scm_weak_value_hash_table_p (obj)
C Function: scm_doubly_weak_hash_table_p (obj)

Return #t if obj is the specified weak hash table. Note that a doubly weak hash table is neither a weak key nor a weak value hash table.