PLplot  5.15.0
hash.h File Reference

Go to the source code of this file.

Typedefs

typedef struct hashtable hashtable
 
typedef void *(* ht_keycp) (void *)
 
typedef int(* ht_keyeq) (void *, void *)
 
typedef unsigned int(* ht_key2hash) (void *)
 

Functions

hashtableht_create (int size, ht_keycp cp, ht_keyeq eq, ht_key2hash hash)
 
hashtableht_create_d1 (int size)
 
hashtableht_create_d2 (int size)
 
hashtableht_create_str (int size)
 
void ht_destroy (hashtable *table)
 
void * ht_insert (hashtable *table, void *key, void *data)
 
void * ht_find (hashtable *table, void *key)
 
void * ht_delete (hashtable *table, void *key)
 
void ht_process (hashtable *table, void(*func)(void *))
 

Typedef Documentation

◆ hashtable

typedef struct hashtable hashtable

Definition at line 21 of file hash.h.

◆ ht_key2hash

typedef unsigned int( * ht_key2hash) (void *)

Definition at line 33 of file hash.h.

◆ ht_keycp

typedef void*( * ht_keycp) (void *)

Definition at line 25 of file hash.h.

◆ ht_keyeq

typedef int( * ht_keyeq) (void *, void *)

Definition at line 29 of file hash.h.

Function Documentation

◆ ht_create()

hashtable* ht_create ( int  size,
ht_keycp  cp,
ht_keyeq  eq,
ht_key2hash  hash 
)

Definition at line 54 of file hash.c.

◆ ht_create_d1()

hashtable* ht_create_d1 ( int  size)

Definition at line 396 of file hash.c.

◆ ht_create_d2()

hashtable* ht_create_d2 ( int  size)

Definition at line 401 of file hash.c.

◆ ht_create_str()

hashtable* ht_create_str ( int  size)

Definition at line 406 of file hash.c.

◆ ht_delete()

void* ht_delete ( hashtable table,
void *  key 
)

Definition at line 233 of file hash.c.

◆ ht_destroy()

void ht_destroy ( hashtable table)

Definition at line 102 of file hash.c.

◆ ht_find()

void* ht_find ( hashtable table,
void *  key 
)

Definition at line 210 of file hash.c.

◆ ht_insert()

void* ht_insert ( hashtable table,
void *  key,
void *  data 
)

Definition at line 135 of file hash.c.

◆ ht_process()

void ht_process ( hashtable table,
void(*)(void *)  func 
)

Definition at line 290 of file hash.c.