1 /* $Id: idf_pkg.spec,v 1.6 1994/06/24 11:16:34 ceriel Exp $ */
2 /* IDENTIFIER DESCRIPTOR */
6 /* This a generic package for maintaining a name list */
8 /* Instantiation parameters, supplied by #define, are :
9 IDF_TYPE: the type of the user-defined part of the idf-structure,
10 IDF_NAME: the selector name for this field in the idf_structure, and
11 IDF_HSIZE: the number of significant characters for hashing
15 #define IDF_NAME id_user
19 struct idf *id_next; /* links idf-structures together */
20 char *id_text; /* string representing the name */
22 IDF_TYPE IDF_NAME; /* user defined type and selector */
28 Initializes the namelist.
30 _PROTOTYPE(void init_idf, (void));
32 /* struct idf * str2idf(tg, cp)
36 Adds the string indicated by "tg" to the namelist, and returns a
38 If cp > 0, a copy of tg is made for id_text, otherwise tg itself
40 If cp < 0, the string is not entered, but only looked for.
43 _PROTOTYPE(struct idf *str2idf, (char *, int));
45 #define findidf(tg) str2idf(tg, -1)