4
4
/* For row and column name hash tables */
6
typedef struct _hashelem {
9
struct _hashelem *next;
10
struct _hashelem *nextelem;
6
typedef struct _hashelem
10
struct _hashelem *next;
11
struct _hashelem *nextelem;
13
typedef struct /* _hashtable */ {
18
struct _hashelem *first;
19
struct _hashelem *last;
14
typedef struct /* _hashtable */
20
struct _hashelem *first;
21
struct _hashelem *last;
26
STATIC hashtable *create_hash_table(int size, int base);
27
STATIC void free_hash_table(hashtable *ht);
28
STATIC hashelem *findhash(const char *name, hashtable *ht);
29
STATIC hashelem *puthash(const char *name, int index, hashelem **list, hashtable *ht);
30
STATIC void drophash(const char *name, hashelem **list, hashtable *ht);
31
STATIC void free_hash_item(hashelem **hp);
32
STATIC hashtable *copy_hash_table(hashtable *ht, hashelem **list, int newsize);
33
STATIC int find_var(lprec *lp, char *name, MYBOOL verbose);
34
STATIC int find_row(lprec *lp, char *name, MYBOOL Unconstrained_rows_found);
28
STATIC hashtable *create_hash_table(int size, int base);
29
STATIC void free_hash_table(hashtable *ht);
30
STATIC hashelem *findhash(const char *name, hashtable *ht);
31
STATIC hashelem *puthash(const char *name, int index, hashelem **list, hashtable *ht);
32
STATIC void drophash(const char *name, hashelem **list, hashtable *ht);
33
STATIC void free_hash_item(hashelem **hp);
34
STATIC hashtable *copy_hash_table(hashtable *ht, hashelem **list, int newsize);
35
STATIC int find_var(lprec *lp, char *name, MYBOOL verbose);
36
STATIC int find_row(lprec *lp, char *name, MYBOOL Unconstrained_rows_found);
40
42
#endif /* HEADER_lp_hash */