-
MAKE-HASH-TABLE now has an optional :WEAKNESS argument that can take the values :KEY, :VALUE, :KEY-AND-VALUE, or :KEY-OR-VALUE. :KEY means that the key of an entry must be live to guarantee that the entry is preserved. VALUE means that the value of an entry must be live to guarantee that the entry is preserved. :KEY-AND-VALUE means that both the key and the value must be live to guarantee that the entry is preserved. :KEY-OR-VALUE means that either the key or the value must be live to guarantee that the entry is preserved. The tests simply excercise the various types of weak hash tables enough that a GC phase should show that the table indeed does decrease in size. Changed the defition of functions in HashTableFunctions to match current docstring/pf_XXX() naming conventions. This implementation is only lightly tested in single-threaded use, and untested in multiple threading scenarios. Addresses ticket:140.
bd90e2da