Eneboo - Documentación para desarrolladores
Clases | 'defines' | 'typedefs' | Enumeraciones | Funciones
Referencia del Archivo src/libpq/include/utils/hsearch.h

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 HASHELEMENTHASHBUCKET
typedef HASHBUCKETHASHSEGMENT
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

HTABhash_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_DIRSIZE   256
#define DEF_FFACTOR   1
#define DEF_SEGSIZE   256
#define DEF_SEGSIZE_SHIFT   8
#define HASH_ALLOC   0x100
#define HASH_ATTACH   0x080
#define HASH_COMPARE   0x400
#define HASH_CONTEXT   0x200
#define HASH_DIRSIZE   0x004
#define HASH_ELEM   0x020
#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'

typedef void*(* HashAllocFunc)(Size request)
typedef int(* HashCompareFunc)(const void *key1, const void *key2, Size keysize)
typedef void*(* HashCopyFunc)(void *dest, const void *src, Size keysize)
typedef struct HASHCTL HASHCTL
typedef struct HASHELEMENT HASHELEMENT
typedef struct HASHHDR HASHHDR
typedef uint32(* HashValueFunc)(const void *key, Size keysize)
typedef struct HTAB HTAB

Documentación de las enumeraciones

enum HASHACTION
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_seq_init ( HASH_SEQ_STATUS status,
HTAB hashp 
)
void* hash_seq_search ( HASH_SEQ_STATUS status)
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 
)
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Propiedades Amigas 'defines'