Classes | Typedefs | Functions
hash.h File Reference
#include "curl_setup.h"
#include <stddef.h>
#include "llist.h"
Include dependency graph for hash.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  curl_hash
struct  curl_hash_element
struct  curl_hash_iterator

Typedefs

typedef size_t(* comp_function )(void *key1, size_t key1_len, void *key2, size_t key2_len)
typedef void(* curl_hash_dtor )(void *)
typedef size_t(* hash_function )(void *key, size_t key_length, size_t slots_num)

Functions

void * Curl_hash_add (struct curl_hash *h, void *key, size_t key_len, void *p)
void Curl_hash_apply (struct curl_hash *h, void *user, void(*cb)(void *user, void *ptr))
void Curl_hash_clean (struct curl_hash *h)
void Curl_hash_clean_with_criterium (struct curl_hash *h, void *user, int(*comp)(void *, void *))
int Curl_hash_count (struct curl_hash *h)
int Curl_hash_delete (struct curl_hash *h, void *key, size_t key_len)
void Curl_hash_destroy (struct curl_hash *h)
int Curl_hash_init (struct curl_hash *h, int slots, hash_function hfunc, comp_function comparator, curl_hash_dtor dtor)
struct curl_hash_elementCurl_hash_next_element (struct curl_hash_iterator *iter)
void * Curl_hash_pick (struct curl_hash *, void *key, size_t key_len)
void Curl_hash_print (struct curl_hash *h, void(*func)(void *))
void Curl_hash_start_iterate (struct curl_hash *hash, struct curl_hash_iterator *iter)
size_t Curl_hash_str (void *key, size_t key_length, size_t slots_num)
size_t Curl_str_key_compare (void *k1, size_t key1_len, void *k2, size_t key2_len)

Typedef Documentation

typedef size_t(* comp_function)(void *key1, size_t key1_len, void *key2, size_t key2_len)

Definition at line 39 of file hash.h.

typedef void(* curl_hash_dtor)(void *)

Definition at line 44 of file hash.h.

typedef size_t(* hash_function)(void *key, size_t key_length, size_t slots_num)

Definition at line 32 of file hash.h.


Function Documentation

void* Curl_hash_add ( struct curl_hash h,
void *  key,
size_t  key_len,
void *  p 
)

Definition at line 134 of file hash.c.

void Curl_hash_apply ( struct curl_hash h,
void *  user,
void(*)(void *user, void *ptr cb 
)
void Curl_hash_clean ( struct curl_hash h)

Definition at line 260 of file hash.c.

void Curl_hash_clean_with_criterium ( struct curl_hash h,
void *  user,
int(*)(void *, void *)  comp 
)

Definition at line 267 of file hash.c.

int Curl_hash_count ( struct curl_hash h)
int Curl_hash_delete ( struct curl_hash h,
void *  key,
size_t  key_len 
)

Definition at line 173 of file hash.c.

void Curl_hash_destroy ( struct curl_hash h)

Definition at line 241 of file hash.c.

int Curl_hash_init ( struct curl_hash h,
int  slots,
hash_function  hfunc,
comp_function  comparator,
curl_hash_dtor  dtor 
)

Definition at line 59 of file hash.c.

struct curl_hash_element* Curl_hash_next_element ( struct curl_hash_iterator iter) [read]

Definition at line 326 of file hash.c.

void* Curl_hash_pick ( struct curl_hash ,
void *  key,
size_t  key_len 
)

Definition at line 195 of file hash.c.

void Curl_hash_print ( struct curl_hash h,
void(*)(void *)  func 
)
void Curl_hash_start_iterate ( struct curl_hash hash,
struct curl_hash_iterator iter 
)

Definition at line 317 of file hash.c.

size_t Curl_hash_str ( void *  key,
size_t  key_length,
size_t  slots_num 
)

Definition at line 294 of file hash.c.

size_t Curl_str_key_compare ( void *  k1,
size_t  key1_len,
void *  k2,
size_t  key2_len 
)

Definition at line 308 of file hash.c.



rc_visard_driver
Author(s): Heiko Hirschmueller , Christian Emmerich , Felix Ruess
autogenerated on Thu Jun 6 2019 20:43:08