open_address_hash_dictionary_handler.h
Go to the documentation of this file.
ion_status_t oadict_delete(ion_dictionary_t *dictionary, ion_key_t key)
Deletes the key and assoicated value from the dictionary instance.
Definition: open_address_hash_dictionary_handler.c:384
enum ION_KEY_TYPE ion_key_type_t
This is the available key types for ION_DB. All types will be based on system defines.
Struct used to maintain an instance of an in memory hashmap.
Definition: open_address_hash.h:70
A hash table using linear probing. Designed for in memory use.
void oadict_destroy_cursor(ion_dict_cursor_t **cursor)
Destroys the cursor.
Definition: open_address_hash_dictionary_handler.c:487
ion_cursor_status_t oadict_next(ion_dict_cursor_t *cursor, ion_record_t *record)
Next function to query and retrieve the next <K,V> that stratifies the predicate of the cursor...
Definition: open_address_hash_dictionary_handler.c:420
int oadict_compare(ion_key_t first_key, ion_key_t second_key)
Compares two key and returns the difference.
unsigned int ion_dictionary_id_t
A type used to identify dictionaries, specifically in the master table.
Definition: dictionary_types.h:51
unsigned int ion_dictionary_size_t
The implementation specific size of the dictionary.
Definition: kv_system.h:264
void oadict_init(ion_dictionary_handler_t *handler)
Registers a specific handler for a dictionary instance.
Definition: open_address_hash_dictionary_handler.c:324
ion_dict_cursor_t super
Definition: open_address_hash_dictionary_handler.h:68
char(* ion_dictionary_compare_t)(ion_key_t, ion_key_t, ion_key_size_t)
Function pointer type for dictionary comparison methods.
Definition: dictionary_types.h:83
ion_err_t oadict_delete_dictionary(ion_dictionary_t *dictionary)
Deletes an instance of the dictionary and associated data.
Definition: open_address_hash_dictionary_handler.c:392
A dictionary contains information regarding an instance of the storage element and the associated han...
Definition: dictionary_types.h:273
struct oadict_equality_cursor ion_oadict_equality_cursor_t
Dictionary cursor for equality queries.
char * dictionary_name
Definition: open_address_hash_dictionary_handler.h:55
ion_err_t oadict_destroy_dictionary(ion_dictionary_id_t id)
Cleans up all files created by the dictionary, and frees any allocated memory, for an already closed ...
Definition: open_address_hash_dictionary_handler.c:403
Struct used to for instance of a given dictionary.
Definition: open_address_hash_dictionary_handler.h:53
ion_status_t oadict_insert(ion_dictionary_t *dictionary, ion_key_t key, ion_value_t value)
Inserts a key and value into the dictionary.
Definition: open_address_hash_dictionary_handler.c:340
ion_err_t oadict_create_dictionary(ion_dictionary_id_t id, ion_key_type_t key_type, ion_key_size_t key_size, ion_value_size_t value_size, ion_dictionary_size_t dictionary_size, ion_dictionary_compare_t compare, ion_dictionary_handler_t *handler, ion_dictionary_t *dictionary)
Creates an instance of a dictionary.
Definition: open_address_hash_dictionary_handler.c:349
ion_boolean_t oadict_is_equal(ion_dictionary_t *dict, ion_key_t key1, ion_key_t key2)
Compares two keys and determines if they are equal assuming that they are equal is length (in size)...
Definition: open_address_hash_dictionary_handler.c:473
Definition: open_address_hash_dictionary.h:46
ion_oadict_cursor_t cursor_info
Definition: open_address_hash_dictionary_handler.h:69
This file includes common components for oadictionary and oahash.
Dictionary cursor for equality queries.
Definition: open_address_hash_dictionary_handler.h:67
struct oa_dictionary ion_oa_dictionary_t
Struct used to for instance of a given dictionary.
ion_status_t oadict_update(ion_dictionary_t *dictionary, ion_key_t key, ion_value_t value)
Updates the value for a given key.
Definition: open_address_hash_dictionary_handler.c:411
A dictionary_handler is responsible for dealing with the specific interface for an underlying diction...
Definition: dictionary_types.h:207
A status object that describes the result of a dictionary operation.
Definition: kv_system.h:290