Hi Nick,
I've added a src test that shows iteration through a hash from C
(t/src/hash.t #10) and disabled capturing SIGHUP, as mentioned on
#parrotsketch.
The other TODO [1] will take a bit of time. Currently the hash buckets
are filled from right to left, which makes iteration not stable, when
keys are added during iteration. Reversing the bucket fill direction
will fix this, as extendending the hash bucket store will always happen
towards right due to realloc(3).
Would be great if someone could have a look at src/hash.c and reverse
the fill direction of the bash bucket store (hash->bu.bs) and also the
iteration direction. A distinct pointer to the bucket store (instead
the current union) probably simplifies this task.
Thanks,
leo
[1] Iterating through a hash should behave "reasonable" when keys are
added (or even deleted) during iteration. It's not necessary that added
keys are seen during iteration, but all keys, present before any
changes, have to be visible during iteration.