Scieneer Common Lisp 1.3.9 online documentation

with-hash-table-iterator (function hash-table) &parse-body (body decls)[Macro]

Provides a method for manually looping over the elements of a hash-table. The function is bound to a generator-macro that, withing the scope of the invocation, returns one or three values. The first value tells whether any objects remain in the hash table. when the first value is non-nil, the second and third values are the key and the value of the next object.

If the hash-table has a defined lock then it is only acquired and released by function when accessing the table, and not held for the full extent of the body.