1: /* $Header: hash.h,v 1.2 85/03/26 15:49:56 nicklin Exp $ */
2:
3: /*
4: * Hash table definitions
5: *
6: * Author: Peter J. Nicklin
7: */
8:
9: /*
10: * Singly-linked list block containing a pointer to a hash table
11: * block for an include file
12: */
13: typedef struct _iblk
14: {
15: int i_loop;
16: struct _hblk *i_hblk;
17: struct _iblk *i_next;
18: } INCBLK;
19: /*
20: * Hash table block
21: */
22: typedef struct _hblk
23: {
24: char *h_key; /* points to key */
25: char *h_def; /* points to definition string */
26: int h_val; /* integer value */
27: struct _iblk *h_sub; /* ptr to include subchain */
28: struct _hblk *h_tag; /* ptr to auxiliary tag chain */
29: struct _hblk *h_next; /* ptr to next block */
30: } HASHBLK;
31: /*
32: * Hash pointer table struct
33: */
34: typedef struct _hash
35: {
36: HASHBLK **hashtab; /* hash pointer table */
37: int hashsiz; /* hash table size */
38: } HASH;
39: /*
40: * Functions defined for hash tables
41: */
42: extern HASHBLK *htbrm(); /* remove hash table block */
43: extern int hthash(); /* compute hash value */
44: extern HASH *htinit(); /* initialize hash table */
45: extern HASHBLK *htinstall(); /* install hash table entry */
46: extern HASHBLK *htlookup(); /* find hash table entry */
47: extern void htrm(); /* remove hash table entry */
Defined struct's
_hash
defined in line
34;
never used
_hblk
defined in line
22; used 5 times
_iblk
defined in line
13; used 4 times
Defined typedef's
HASH
defined in line
38; used 23 times
- in line 44
- in /usr/src/new/mkmf/src/Mkmf.c line
29
- in /usr/src/new/mkmf/src/buildlist.c line
50,
78
- in /usr/src/new/mkmf/src/depend.c line
37-39(3),
61,
314,
362
- in /usr/src/new/mkmf/src/editmf.c line
35
- in /usr/src/new/mkmf/src/hash.c line
15,
30,
36-39(3),
62,
100,
120
- in /usr/src/new/mkmf/src/macro.c line
181
- in /usr/src/new/mkmf/src/misc.c line
28,
208
- in /usr/src/new/mkmf/src/suffix.c line
24
HASHBLK
defined in line
30; used 64 times
- in line 42-36(4)
- in /usr/src/new/mkmf/src/Mkmf.c line
49-51(3)
- in /usr/src/new/mkmf/src/buildlist.c line
51-52(2),
82-84(3)
- in /usr/src/new/mkmf/src/depend.c line
63-64(2),
284,
308,
315-316(2),
357,
363,
499-502(4),
602-605(4),
706-709(4)
- in /usr/src/new/mkmf/src/dlist.c line
14,
90,
121,
162,
210-211(2)
- in /usr/src/new/mkmf/src/editmf.c line
45-46(2)
- in /usr/src/new/mkmf/src/hash.c line
37-40(3),
57,
66-67(2),
73(2),
97-102(2),
122-123(2),
148-155(5)
- in /usr/src/new/mkmf/src/macro.c line
110,
184
- in /usr/src/new/mkmf/src/misc.c line
31,
218-219(2)
- in /usr/src/new/mkmf/src/suffix.c line
26-27(2)
INCBLK
defined in line
18; used 23 times
Usage of this include