29 lines
552 B
C
29 lines
552 B
C
#include <stdio.h>
|
|
#define LAZY_IMPL
|
|
#include "../lazy.h"
|
|
|
|
void print_hm_idx(void *hm, size_t k) {
|
|
typedef Lz_HM(size_t, size_t) HM;
|
|
HM map = *(HM*)hm;
|
|
if (lz_hm_exists(map,k)) {
|
|
printf("hm[%zu] = %zu\n", k, lz_hm_get(map,k));
|
|
} else {
|
|
printf("hm[%zu] = <N/A>\n", k);
|
|
}
|
|
}
|
|
|
|
int main() {
|
|
Lz_HM(size_t, size_t) hm;
|
|
lz_hm_init(hm);
|
|
for (size_t i = 0; i < 16; ++i) {
|
|
lz_hm_add(hm, i, 2*i);
|
|
}
|
|
|
|
for (size_t i = 4; i < 12; ++i) {
|
|
lz_hm_remove(hm, i);
|
|
}
|
|
|
|
for (size_t i = 0; i < 16; ++i) {
|
|
print_hm_idx(&hm, i);
|
|
}
|
|
}
|