20 #define DEFAULT_DICTIONARY_INITIAL_SIZE 20
void dictionary_destroy_and_destroy_elements(t_dictionary *, void(*element_destroyer)(void *))
Destruye el diccionario y destruye sus elementos.
void dictionary_clean_and_destroy_elements(t_dictionary *, void(*element_destroyer)(void *))
Quita todos los elementos del diccionario y los destruye, dejando el diccionario vacío.
void dictionary_iterator(t_dictionary *, void(*closure)(char *key, void *element))
Aplica closure a todos los elementos del diccionario.
void dictionary_destroy(t_dictionary *)
Destruye el diccionario.
void * dictionary_get(t_dictionary *, char *key)
Obtiene el elemento asociado a la key.
bool dictionary_is_empty(t_dictionary *)
Retorna true si el diccionario está vacío.
int dictionary_size(t_dictionary *)
Retorna la cantidad de elementos del diccionario.
t_list * dictionary_keys(t_dictionary *self)
Retorna todas las keys en una lista.
void dictionary_remove_and_destroy(t_dictionary *, char *, void(*element_destroyer)(void *))
Remueve un elemento del diccionario y lo destruye llamando a la función element_destroyer pasada por ...
void dictionary_put(t_dictionary *, char *key, void *element)
Inserta un nuevo par (key->element) al diccionario, en caso de ya existir la key actualiza el element...
void * dictionary_remove(t_dictionary *, char *key)
Remueve un elemento del diccionario y lo retorna.
t_list * dictionary_elements(t_dictionary *self)
Retorna todos los elementos en una lista.
bool dictionary_has_key(t_dictionary *, char *key)
Retorna true si key se encuentra en el diccionario.
t_dictionary * dictionary_create(void)
Crea el diccionario.
void dictionary_clean(t_dictionary *)
Quita todos los elementos del diccionario sin liberarlos, dejando el diccionario vacío.
#include <commons/collections/list.h>
Estructura de un diccionario que contiene pares string->puntero. Inicializar con dictionary_create().
Definition: dictionary.h:36
t_hash_element ** elements
Definition: dictionary.h:37
int elements_amount
Definition: dictionary.h:40
int table_current_size
Definition: dictionary.h:39
int table_max_size
Definition: dictionary.h:38
Estructura de una lista enlazada. Inicializar con list_create()
Definition: list.h:32