Grid Community Toolkit  6.2.1705709074 (tag: v6.2.20240202)
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Typedefs | Functions
globus_hashtable.h File Reference

Hash Table. More...

#include "globus_types.h"
#include "globus_list.h"

Go to the source code of this file.

Typedefs

typedef int(* globus_hashtable_hash_func_t )(void *key, int limit)
 
typedef int(* globus_hashtable_keyeq_func_t )(void *key1, void *key2)
 
typedef void(* globus_hashtable_copy_func_t )(void **dest_key, void **dest_datum, void *src_key, void *src_datum)
 
typedef void(* globus_hashtable_destructor_func_t )(void *datum)
 

Functions

int globus_hashtable_init (globus_hashtable_t *table, int size, globus_hashtable_hash_func_t hash_func, globus_hashtable_keyeq_func_t keyeq_func)
 Initialize a hash table. More...
 
void * globus_hashtable_lookup (globus_hashtable_t *table, void *key)
 Look up a datum in a hash table. More...
 
int globus_hashtable_insert (globus_hashtable_t *table, void *key, void *datum)
 Insert a datum into a hash table. More...
 
void * globus_hashtable_update (globus_hashtable_t *table, void *key, void *datum)
 Update a hash table mapping. More...
 
void * globus_hashtable_remove (globus_hashtable_t *table, void *key)
 Remove a datum from a hash table. More...
 
int globus_hashtable_to_list (globus_hashtable_t *table, globus_list_t **list)
 Create a list of all datums in a hash table.
 
globus_bool_t globus_hashtable_empty (globus_hashtable_t *table)
 Test hash table emptiness. More...
 
int globus_hashtable_size (globus_hashtable_t *table)
 Hash table size. More...
 
void * globus_hashtable_first (globus_hashtable_t *table)
 Initialize iterator to first hash table entry. More...
 
void * globus_hashtable_next (globus_hashtable_t *table)
 Increment hash table iterator. More...
 
void * globus_hashtable_last (globus_hashtable_t *table)
 Initialize iterator to last hash table entry. More...
 
void * globus_hashtable_prev (globus_hashtable_t *table)
 Decrement hash table iterator. More...
 
int globus_hashtable_destroy (globus_hashtable_t *table)
 Destroy a hash tableDestroys a hashtable representation, releasing any resources used to represent the mappings (abandoning any data in the queue). After this call, a hashtable is no longer considered initialized. More...
 
int globus_hashtable_string_hash (void *string, int limit)
 Null-terminated string hash function. More...
 
int globus_hashtable_string_keyeq (void *string1, void *string2)
 Null-terminated string equality predicate.
 
int globus_hashtable_voidp_hash (void *voidp, int limit)
 Void pointer hash function. More...
 
int globus_hashtable_voidp_keyeq (void *voidp1, void *voidp2)
 Void pointer equality predicate.
 
int globus_hashtable_int_hash (void *integer, int limit)
 Integer hash function. More...
 
int globus_hashtable_int_keyeq (void *integer1, void *integer2)
 Integer equality predicate.
 

Detailed Description

Hash Table.