|
|
1.1 ! root 1: /* $Header$ */ ! 2: ! 3: /* ! 4: * Hash table definitions ! 5: * ! 6: * Author: Peter J. Nicklin ! 7: */ ! 8: ! 9: /* ! 10: * Hash table block ! 11: */ ! 12: typedef struct _hblk ! 13: { ! 14: char *h_key; /* points to key */ ! 15: char *h_def; /* points to definition string */ ! 16: int h_val; /* integer value */ ! 17: struct _hblk *h_next; /* ptr to next block */ ! 18: } HASHBLK; ! 19: /* ! 20: * Hash pointer table struct ! 21: */ ! 22: typedef struct _hash ! 23: { ! 24: HASHBLK **hashtab; /* hash pointer table */ ! 25: int hashsiz; /* hash table size */ ! 26: } HASH; ! 27: /* ! 28: * Functions defined for hash tables ! 29: */ ! 30: extern HASHBLK *htbrm(); /* remove hash table block */ ! 31: extern int hthash(); /* compute hash value */ ! 32: extern HASH *htinit(); /* initialize hash table */ ! 33: extern HASHBLK *htinstall(); /* install hash table entry */ ! 34: extern HASHBLK *htlookup(); /* find hash table entry */ ! 35: extern void htrm(); /* remove hash table entry */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.