diff options
Diffstat (limited to 'HashTable.h')
| -rw-r--r-- | HashTable.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/HashTable.h b/HashTable.h new file mode 100644 index 0000000..d32f890 --- /dev/null +++ b/HashTable.h @@ -0,0 +1,24 @@ +#ifndef _HASHTABLE +#define _HASHTABLE + +#include "Types.h" +#include "MemoryManager.h" + +typedef void* HashTable; + +HashTable H_new(MemoryManager *mm, usize size); +Result H_free(HashTable* ht); +Result H_freevals(HashTable* ht); +Result H_freeat(HashTable ht, const char *key); +usize H_size(HashTable ht); +usize H_count(HashTable ht); +Result H_insert(HashTable ht, const char *key, void *value); +Result H_insertstr(HashTable ht, const char *key, const char *value); +Result H_inserti(HashTable ht, const char *key, int value); +Result H_insertf(HashTable ht, const char *key, double value); +void* H_get(HashTable ht, const char* key); +char* H_getstr(HashTable ht, const char* key); +int* H_geti(HashTable ht, const char* key); +double* H_getf(HashTable ht, const char* key); + +#endif /* _HASHTABLE */ |
