projects
/
YACASL2.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
d43873505a8b77894101203beee852797f4547c6
[YACASL2.git]
/
hash.h
1
#ifndef YACASL2_HASH_INCLUDED
2
#define YACASL2_HASH_INCLUDED
3
4
#include "cmem.h"
5
6
/* ハッシュ共用体の型 */
7
typedef enum {
8
CHARS = 0,
9
INT = 1,
10
} UTYPE;
11
12
/* ハッシュ共用体 */
13
typedef struct {
14
UTYPE type;
15
union {
16
char *s;
17
int i;
18
} val;
19
} HKEY;
20
21
/* ハッシュ表のサイズを決めるため、引数の数値未満で最大の素数を返す */
22
int hashtabsize(int size);
23
24
/* ハッシュ値を取得する */
25
unsigned hash(int keyc, HKEY *keyv[], int tabsize);
26
27
#endif