/* %Z%%M% %I% %E% */

/*
 * Copyright (c) 1990, 1991, 1995 by Wayne C. Gramlich.
 * All rights reserved.
 *
 * Permission to use, copy, modify, distribute, and sell this software
 * for any purpose is hereby granted without fee provided that the above
 * copyright notice and this permission are retained.  The author makes
 * no representations about the suitability of this software for any purpose.
 * It is provided "as is" without express or implied warranty.
 */

/* Hash table exported type definitions: */

#ifndef HASH_TYPES_H
#define HASH_TYPES_H

typedef int	Hsh_value;
typedef int	(*Hsh_routine_hash)(/*Hsh_value, Hsh_value*/);
typedef int	(*Hsh_routine_equal)(/*Hsh_value, Hsh_value, Hsh_value*/);
typedef int	(*Hsh_routine_iterate)(/*Hsh_value, Hsh_value*/);
typedef struct Hsh_bucket_struct	*Hsh_bucket, Hsh_bucket_rec;
typedef struct Hsh_header_struct	*Hsh_header, Hsh_header_rec;
typedef struct Hsh_struct		*Hsh, Hsh_rec;

#define Hash(type)	Hsh

#endif /* HASH_TYPES_H */
