2
* Copyright 1993, 1995 Christopher Seiwald.
4
* This file is part of Jam - see jam.c for Copyright information.
8
* hash.h - simple in-memory hashing routines
11
#ifndef BOOST_JAM_HASH_H
12
#define BOOST_JAM_HASH_H
14
typedef struct hashdata HASHDATA;
16
struct hash * hashinit ( int datalen, char * name );
17
int hashitem ( struct hash * hp, HASHDATA * * data, int enter );
18
void hashdone ( struct hash * hp );
19
void hashenumerate( struct hash * hp, void (* f)( void *, void * ), void * data );
20
int hash_free ( struct hash * hp, HASHDATA * data);
22
#define hashenter( hp, data ) ( !hashitem( hp, data, !0 ) )
23
#define hashcheck( hp, data ) hashitem( hp, data, 0 )