--- ray/src/common/lookup.h 2004/05/25 06:30:46 2.13 +++ ray/src/common/lookup.h 2004/05/25 22:04:13 2.14 @@ -1,19 +1,17 @@ -/* RCSid $Id: lookup.h,v 2.13 2004/05/25 06:30:46 greg Exp $ */ +/* RCSid $Id: lookup.h,v 2.14 2004/05/25 22:04:13 greg Exp $ */ /* * Header file for general associative table lookup routines */ #ifndef _RAD_LOOKUP_H_ #define _RAD_LOOKUP_H_ -#include /* strcmp() */ - #ifdef __cplusplus extern "C" { #endif typedef void lut_free_t(void *p); -typedef unsigned long lut_hashf_t(void*); -typedef int lut_keycmpf_t(const void*, const void*); +typedef unsigned long lut_hashf_t(const void *); +typedef int lut_keycmpf_t(const void *, const void *); typedef struct { char *key; /* key name */ @@ -79,14 +77,14 @@ typedef struct { * allocated table itself. */ -typedef int lut_doallf_t(LUENT *e, void *p); +typedef int lut_doallf_t(const LUENT *e, void *p); extern lut_keycmpf_t lu_strcmp; extern int lu_init(LUTAB *tbl, int nel); -extern unsigned long lu_shash(void *s); -extern LUENT *lu_find(LUTAB *tbl, char *key); -extern void lu_delete(LUTAB *tbl, char *key); -extern int lu_doall(LUTAB *tbl, lut_doallf_t *f, void *p); +extern unsigned long lu_shash(const void *s); +extern LUENT *lu_find(LUTAB *tbl, const char *key); +extern void lu_delete(LUTAB *tbl, const char *key); +extern int lu_doall(const LUTAB *tbl, lut_doallf_t *f, void *p); extern void lu_done(LUTAB *tbl); #define LU_SINIT(fk,fd) {lu_shash,lu_strcmp,fk,fd,0,NULL,0}