2 * Copyright 2001, 2002, 2003 David Mansfield and Cobite, Inc.
3 * See COPYING file for license information
15 struct list_head he_list
;
21 struct list_head
*ht_lists
;
23 struct list_head
*iterator_ptr
;
36 struct hash_table
*create_hash_table(unsigned int sz
);
37 void destroy_hash_table(struct hash_table
*tbl
, void (*delete_obj
)(void *));
38 void *put_hash_object(struct hash_table
*tbl
, const char *key
, void *obj
);
39 void *get_hash_object(struct hash_table
*tbl
, const char *key
);
40 void *remove_hash_object(struct hash_table
*tbl
, const char *key
);
42 int put_hash_object_ex(struct hash_table
*tbl
, const char *key
, void *obj
, int, char **, void **);
43 void destroy_hash_table_ex(struct hash_table
*tbl
, void (*delete_entry
)(const void *, char *, void *), const void *);
45 void reset_hash_iterator(struct hash_table
*tbl
);
46 struct hash_entry
*next_hash_entry(struct hash_table
*tbl
);
52 #endif /* _COMMON_HASH_H */