1 /* $RCSfile: hash.h,v $$Revision: 4.1 $$Date: 92/08/07 18:29:21 $
3 * Copyright (c) 1991-1997, Larry Wall
5 * You may distribute under the terms of either the GNU General Public
6 * License or the Artistic License, as specified in the README file.
11 #define FILLPCT 60 /* don't make greater than 99 */
15 61,59,53,47,43,41,37,31,29,23,17,13,11,7,3,1,
16 61,59,53,47,43,41,37,31,29,23,17,13,11,7,3,1,
17 61,59,53,47,43,41,37,31,29,23,17,13,11,7,3,1,
18 61,59,53,47,43,41,37,31,29,23,17,13,11,7,3,1,
19 61,59,53,47,43,41,37,31,29,23,17,13,11,7,3,1,
20 61,59,53,47,43,41,37,31,29,23,17,13,11,7,3,1,
21 61,59,53,47,43,41,37,31,29,23,17,13,11,7,3,1,
22 61,59,53,47,43,41,37,31,29,23,17,13,11,7,3,1};
27 typedef struct hentry HENT;
40 int tbl_riter; /* current root of iterator */
41 HENT *tbl_eiter; /* current entry of iterator */
44 bool hdelete _((HASH *tb, char *key));
45 STR * hfetch _(( HASH *tb, char *key ));
46 int hiterinit _(( HASH *tb ));
47 char * hiterkey _(( HENT *entry ));
48 HENT * hiternext _(( HASH *tb ));
49 STR * hiterval _(( HENT *entry ));
50 HASH * hnew _(( void ));
51 void hsplit _(( HASH *tb ));
52 bool hstore _(( HASH *tb, char *key, STR *val ));