#pragma once #include "global.h" struct hashtable; struct hashtable* ht_alloc(void); void ht_free(struct hashtable *ht); // Overwrites if the key already exists in the table. void ht_insert(struct hashtable *ht, u64 key, void *value); // Returns NULL if key is not present in the table. void* ht_find(const struct hashtable *ht, u64 key); // Does nothing if the key is not present in the table. void ht_delete(struct hashtable *ht, u64 key);