| 443 | } |
| 444 | |
| 445 | bool |
| 446 | ckh_iter(ckh_t *ckh, size_t *tabind, void **key, void **data) { |
| 447 | size_t i, ncells; |
| 448 | |
| 449 | for (i = *tabind, ncells = (ZU(1) << (ckh->lg_curbuckets + |
| 450 | LG_CKH_BUCKET_CELLS)); i < ncells; i++) { |
| 451 | if (ckh->tab[i].key != NULL) { |
| 452 | if (key != NULL) { |
| 453 | *key = (void *)ckh->tab[i].key; |
| 454 | } |
| 455 | if (data != NULL) { |
| 456 | *data = (void *)ckh->tab[i].data; |
| 457 | } |
| 458 | *tabind = i + 1; |
| 459 | return false; |
| 460 | } |
| 461 | } |
| 462 | |
| 463 | return true; |
| 464 | } |
| 465 | |
| 466 | bool |
| 467 | ckh_insert(tsd_t *tsd, ckh_t *ckh, const void *key, const void *data) { |
no outgoing calls