Ir al código fuente de este archivo.
Clases |
struct | HASHELEMENT |
struct | HASHHDR |
struct | HTAB |
struct | HASHCTL |
struct | HASH_SEQ_STATUS |
'defines' |
#define | DEF_SEGSIZE 256 |
#define | DEF_SEGSIZE_SHIFT 8 |
#define | DEF_DIRSIZE 256 |
#define | DEF_FFACTOR 1 |
#define | HASH_SEGMENT 0x002 |
#define | HASH_DIRSIZE 0x004 |
#define | HASH_FFACTOR 0x008 |
#define | HASH_FUNCTION 0x010 |
#define | HASH_ELEM 0x020 |
#define | HASH_SHARED_MEM 0x040 |
#define | HASH_ATTACH 0x080 |
#define | HASH_ALLOC 0x100 |
#define | HASH_CONTEXT 0x200 |
#define | HASH_COMPARE 0x400 |
#define | HASH_KEYCOPY 0x800 |
#define | NO_MAX_DSIZE (-1) |
#define | HASHELEMENT_ALLOC_MAX (32) |
'typedefs' |
typedef uint32(* | HashValueFunc )(const void *key, Size keysize) |
typedef int(* | HashCompareFunc )(const void *key1, const void *key2, Size keysize) |
typedef void *(* | HashCopyFunc )(void *dest, const void *src, Size keysize) |
typedef void *(* | HashAllocFunc )(Size request) |
typedef struct HASHELEMENT | HASHELEMENT |
typedef HASHELEMENT * | HASHBUCKET |
typedef HASHBUCKET * | HASHSEGMENT |
typedef struct HASHHDR | HASHHDR |
typedef struct HTAB | HTAB |
typedef struct HASHCTL | HASHCTL |
Enumeraciones |
enum | HASHACTION { HASH_FIND,
HASH_ENTER,
HASH_REMOVE,
HASH_ENTER_NULL
} |
Funciones |
HTAB * | hash_create (const char *tabname, long nelem, HASHCTL *info, int flags) |
void | hash_destroy (HTAB *hashp) |
void | hash_stats (const char *where, HTAB *hashp) |
void * | hash_search (HTAB *hashp, const void *keyPtr, HASHACTION action, bool *foundPtr) |
void | hash_seq_init (HASH_SEQ_STATUS *status, HTAB *hashp) |
void * | hash_seq_search (HASH_SEQ_STATUS *status) |
Size | hash_estimate_size (long num_entries, Size entrysize) |
long | hash_select_dirsize (long num_entries) |
uint32 | string_hash (const void *key, Size keysize) |
uint32 | tag_hash (const void *key, Size keysize) |
uint32 | oid_hash (const void *key, Size keysize) |
uint32 | bitmap_hash (const void *key, Size keysize) |
int | bitmap_match (const void *key1, const void *key2, Size keysize) |
Documentación de los 'defines'
#define DEF_SEGSIZE_SHIFT 8 |
#define HASH_ATTACH 0x080 |
#define HASH_COMPARE 0x400 |
#define HASH_CONTEXT 0x200 |
#define HASH_DIRSIZE 0x004 |
#define HASH_FFACTOR 0x008 |
#define HASH_FUNCTION 0x010 |
#define HASH_KEYCOPY 0x800 |
#define HASH_SEGMENT 0x002 |
#define HASH_SHARED_MEM 0x040 |
#define HASHELEMENT_ALLOC_MAX (32) |
#define NO_MAX_DSIZE (-1) |
Documentación de los 'typedefs'
Documentación de las enumeraciones
- Valores de enumeraciones:
HASH_FIND |
|
HASH_ENTER |
|
HASH_REMOVE |
|
HASH_ENTER_NULL |
|
Documentación de las funciones
uint32 bitmap_hash |
( |
const void * |
key, |
|
|
Size |
keysize |
|
) |
| |
int bitmap_match |
( |
const void * |
key1, |
|
|
const void * |
key2, |
|
|
Size |
keysize |
|
) |
| |
HTAB* hash_create |
( |
const char * |
tabname, |
|
|
long |
nelem, |
|
|
HASHCTL * |
info, |
|
|
int |
flags |
|
) |
| |
void hash_destroy |
( |
HTAB * |
hashp | ) |
|
Size hash_estimate_size |
( |
long |
num_entries, |
|
|
Size |
entrysize |
|
) |
| |
void* hash_search |
( |
HTAB * |
hashp, |
|
|
const void * |
keyPtr, |
|
|
HASHACTION |
action, |
|
|
bool * |
foundPtr |
|
) |
| |
long hash_select_dirsize |
( |
long |
num_entries | ) |
|
void hash_stats |
( |
const char * |
where, |
|
|
HTAB * |
hashp |
|
) |
| |
uint32 oid_hash |
( |
const void * |
key, |
|
|
Size |
keysize |
|
) |
| |
uint32 string_hash |
( |
const void * |
key, |
|
|
Size |
keysize |
|
) |
| |
uint32 tag_hash |
( |
const void * |
key, |
|
|
Size |
keysize |
|
) |
| |