Preallocate HvAUX() structures for large bucket arrays
authorYves Orton <demerphq@gmail.com>
Sat, 1 Mar 2014 16:31:53 +0000 (17:31 +0100)
committerYves Orton <demerphq@gmail.com>
Tue, 18 Mar 2014 07:37:04 +0000 (08:37 +0100)
commit32dfa2a7022d23efefa78556ec78725b0d2d4373
treeb9feb23236ba6cd041619b749db09d6fa8f3463c
parentbea177f3c4412e3250a860c64abed7595ae6373a
Preallocate HvAUX() structures for large bucket arrays

The assumption is that the time/space tradeoff of not allocating
the HvAUX() structure goes away for a large bucket array where the
size of the allocated buffer is much larger than the nonallocated
HvAUX() "extension".

This should make keys() and each() on larger hashes faster, but
still preserve the essence of the original space conservation,
where the assumption is a lot of small hash based objects which
will never be traversed.
hv.c
hv.h