#include <commons/collections/dictionary.h>
Más...
Ir al código fuente de este archivo.
Estructuras de datos | |
struct | t_dictionary |
Estructura de un diccionario que contiene pares string->puntero. Inicializar con dictionary_create() . Más... | |
defines | |
#define | DEFAULT_DICTIONARY_INITIAL_SIZE 20 |
Funciones | |
t_dictionary * | dictionary_create (void) |
Crea el diccionario. Más... | |
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 elemento. Más... | |
void * | dictionary_get (t_dictionary *, char *key) |
Obtiene el elemento asociado a la key. Más... | |
void * | dictionary_remove (t_dictionary *, char *key) |
Remueve un elemento del diccionario y lo retorna. Más... | |
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 parámetro. Más... | |
void | dictionary_iterator (t_dictionary *, void(*closure)(char *key, void *element)) |
Aplica closure a todos los elementos del diccionario. Más... | |
void | dictionary_clean (t_dictionary *) |
Quita todos los elementos del diccionario sin liberarlos, dejando el diccionario vacío. Más... | |
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. Más... | |
bool | dictionary_has_key (t_dictionary *, char *key) |
Retorna true si key se encuentra en el diccionario. Más... | |
bool | dictionary_is_empty (t_dictionary *) |
Retorna true si el diccionario está vacío. Más... | |
int | dictionary_size (t_dictionary *) |
Retorna la cantidad de elementos del diccionario. Más... | |
t_list * | dictionary_keys (t_dictionary *self) |
Retorna todas las keys en una lista. Más... | |
t_list * | dictionary_elements (t_dictionary *self) |
Retorna todos los elementos en una lista. Más... | |
void | dictionary_destroy (t_dictionary *) |
Destruye el diccionario. Más... | |
void | dictionary_destroy_and_destroy_elements (t_dictionary *, void(*element_destroyer)(void *)) |
Destruye el diccionario y destruye sus elementos. Más... | |
#include <commons/collections/dictionary.h>
#define DEFAULT_DICTIONARY_INITIAL_SIZE 20 |
t_dictionary* dictionary_create | ( | void | ) |
Crea el diccionario.
dictionary_destroy()
si se quiere liberar el diccionario pero no los elementos que contiene.dictionary_destroy_and_destroy_elements()
si se quieren liberar el diccionario con los elementos que contiene. 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 elemento.
[in] | key | La clave del elemento. Una copia de la clave será almacenada en el diccionario, por lo que no se afectará a la original. |
[in] | element | El elemento a insertar. Este elemento pasará a pertenecer al diccionario, por lo que no debe ser liberado por fuera de éste. |
element
original. void* dictionary_get | ( | t_dictionary * | , |
char * | key | ||
) |
Obtiene el elemento asociado a la key.
void* dictionary_remove | ( | t_dictionary * | , |
char * | key | ||
) |
Remueve un elemento del diccionario y lo retorna.
void dictionary_remove_and_destroy | ( | t_dictionary * | , |
char * | , | ||
void(*)(void *) | element_destroyer | ||
) |
Remueve un elemento del diccionario y lo destruye llamando a la función element_destroyer
pasada por parámetro.
void dictionary_iterator | ( | t_dictionary * | , |
void(*)(char *key, void *element) | closure | ||
) |
Aplica closure
a todos los elementos del diccionario.
void dictionary_clean | ( | t_dictionary * | ) |
Quita todos los elementos del diccionario sin liberarlos, dejando el diccionario vacío.
void dictionary_clean_and_destroy_elements | ( | t_dictionary * | , |
void(*)(void *) | element_destroyer | ||
) |
Quita todos los elementos del diccionario y los destruye, dejando el diccionario vacío.
bool dictionary_has_key | ( | t_dictionary * | , |
char * | key | ||
) |
Retorna true si key
se encuentra en el diccionario.
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.
t_list* dictionary_elements | ( | t_dictionary * | self | ) |
Retorna todos los elementos en una lista.
void dictionary_destroy | ( | t_dictionary * | ) |
Destruye el diccionario.
void dictionary_destroy_and_destroy_elements | ( | t_dictionary * | , |
void(*)(void *) | element_destroyer | ||
) |
Destruye el diccionario y destruye sus elementos.
dictionary_destroy()