xref: /original-bsd/lib/libc/db/hash/extern.h (revision f737e041)
1 /*-
2  * Copyright (c) 1991, 1993
3  *	The Regents of the University of California.  All rights reserved.
4  *
5  * %sccs.include.redist.c%
6  *
7  *	@(#)extern.h	8.2 (Berkeley) 02/21/94
8  */
9 
10 BUFHEAD	*__add_ovflpage __P((HTAB *, BUFHEAD *));
11 int	 __addel __P((HTAB *, BUFHEAD *, const DBT *, const DBT *));
12 int	 __big_delete __P((HTAB *, BUFHEAD *));
13 int	 __big_insert __P((HTAB *, BUFHEAD *, const DBT *, const DBT *));
14 int	 __big_keydata __P((HTAB *, BUFHEAD *, DBT *, DBT *, int));
15 int	 __big_return __P((HTAB *, BUFHEAD *, int, DBT *, int));
16 int	 __big_split __P((HTAB *, BUFHEAD *, BUFHEAD *, BUFHEAD *,
17 		int, u_int, SPLIT_RETURN *));
18 int	 __buf_free __P((HTAB *, int, int));
19 void	 __buf_init __P((HTAB *, int));
20 u_int	 __call_hash __P((HTAB *, char *, int));
21 int	 __delpair __P((HTAB *, BUFHEAD *, int));
22 int	 __expand_table __P((HTAB *));
23 int	 __find_bigpair __P((HTAB *, BUFHEAD *, int, char *, int));
24 u_short	 __find_last_page __P((HTAB *, BUFHEAD **));
25 void	 __free_ovflpage __P((HTAB *, BUFHEAD *));
26 BUFHEAD	*__get_buf __P((HTAB *, u_int, BUFHEAD *, int));
27 int	 __get_page __P((HTAB *, char *, u_int, int, int, int));
28 int	 __init_bitmap __P((HTAB *, int, int, int));
29 u_int	 __log2 __P((u_int));
30 int	 __put_page __P((HTAB *, char *, u_int, int, int));
31 void	 __reclaim_buf __P((HTAB *, BUFHEAD *));
32 int	 __split_page __P((HTAB *, u_int, u_int));
33 
34 /* Default hash routine. */
35 extern u_int32_t (*__default_hash) __P((const void *, size_t));
36 
37 #ifdef HASH_STATISTICS
38 extern long hash_accesses, hash_collisions, hash_expansions, hash_overflows;
39 #endif
40