Changeset 13309 for trunk/abcl/abcl.asd


Ignore:
Timestamp:
06/07/11 15:38:11 (10 years ago)
Author:
Mark Evenson
Message:

Implementation of hashtables with weak keys and/or values.

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.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/abcl.asd

    r13261 r13309  
    5656                      (:file "wild-pathnames" :depends-on
    5757                             ("file-system-tests"))
     58                      #+abcl
     59                      (:file "weak-hash-tables")
    5860                      #+abcl
    5961                      (:file "pathname-tests" :depends-on
Note: See TracChangeset for help on using the changeset viewer.