diff options
author | Epoch Qwert <epoch@53flpnlls43fcguy.onion> | 2014-09-07 02:37:46 -0500 |
---|---|---|
committer | Epoch Qwert <epoch@53flpnlls43fcguy.onion> | 2014-09-07 02:37:46 -0500 |
commit | f41ec6d42942f994f762486a9ab525ed8c5506e5 (patch) | |
tree | 2834f14db4cdac0a8efb9bb810741af2d38e287d /libhashtable/libhashtable.h | |
parent | 5b723a9da5b94d3a99225f43c7dafcffa1f7676b (diff) | |
download | segfault-f41ec6d42942f994f762486a9ab525ed8c5506e5.tar.gz segfault-f41ec6d42942f994f762486a9ab525ed8c5506e5.zip |
took the hashtable stuff out of segfault and put it into a library. good idea? dunno.
Diffstat (limited to 'libhashtable/libhashtable.h')
-rw-r--r-- | libhashtable/libhashtable.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/libhashtable/libhashtable.h b/libhashtable/libhashtable.h new file mode 100644 index 0000000..7899124 --- /dev/null +++ b/libhashtable/libhashtable.h @@ -0,0 +1,23 @@ +struct entry {//linked list node. + char *original; + char *target; + struct entry *prev;// doubly linked list. why? + struct entry *next; +}; + +struct hitem {//dunno why I don't just have this as a linked list. + struct entry *ll; +}; + +struct hashtable { + int kl;//number of keys in the table + struct hitem **bucket; + int *keys; +}; +unsigned short hash(char *v);//maybe use a seeded rand()? :) Thanks FreeArtMan +void inittable(struct hashtable *ht); +int ht_setkey(struct hashtable *ht,char *key,char *value); +struct entry *ll_getentry(struct entry *start,char *msg); +struct entry *ht_getentry(struct hashtable *ht,char *key); +struct entry *ht_getnode(struct hashtable *ht,char *msg); +char *ht_getvalue(struct hashtable *ht,char *msg); |