summaryrefslogtreecommitdiff
path: root/src/hashtable.h
blob: 43ab23ae04593c7b593eeda6b15aa6e81174dcd9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#ifndef HASHTABLE
#define HASHTABLE

typedef struct HashPair {
	char* key;
	void* value;
} pair_t;
pair_t* init_pair(char* key, void* value);
typedef struct HashTable {
	pair_t** pairs;
	int capacity;
	int itemCount;
} hashtable_t;
hashtable_t* init_hashtable(unsigned int capacity);
unsigned int get_hash(char* str);
unsigned int hashtable_add_pair(hashtable_t* hashtable, pair_t* pair);
pair_t* hashtable_get_pair(hashtable_t* hashtable, char* key);

#endif