#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
Go to the source code of this file.
Data Structures | |
| struct | _dictionary_ |
| Dictionary object. More... | |
Typedefs | |
| typedef _dictionary_ | dictionary |
| Dictionary object. | |
Functions | |
| unsigned | dictionary_hash (char *key) |
| Compute the hash key for a string. | |
| dictionary * | dictionary_new (int size) |
| Create a new dictionary object. | |
| void | dictionary_del (dictionary *vd) |
| Delete a dictionary object. | |
| char * | dictionary_get (dictionary *d, char *key, char *def) |
| Get a value from a dictionary. | |
| char | dictionary_getchar (dictionary *d, char *key, char def) |
| Get a value from a dictionary, as a char. | |
| int | dictionary_getint (dictionary *d, char *key, int def) |
| Get a value from a dictionary, as an int. | |
| double | dictionary_getdouble (dictionary *d, char *key, double def) |
| Get a value from a dictionary, as a double. | |
| void | dictionary_set (dictionary *vd, char *key, char *val) |
| Set a value in a dictionary. | |
| void | dictionary_unset (dictionary *d, char *key) |
| Delete a key in a dictionary. | |
| void | dictionary_setint (dictionary *d, char *key, int val) |
| Set a key in a dictionary, providing an int. | |
| void | dictionary_setdouble (dictionary *d, char *key, double val) |
| Set a key in a dictionary, providing a double. | |
| void | dictionary_dump (dictionary *d, FILE *out) |
| Dump a dictionary to an opened file pointer. | |
|
|
Dictionary object. This object contains a list of string/string associations. Each association is identified by a unique string key. Looking up values in the dictionary is speeded up by the use of a (hopefully collision-free) hash function. |
|
|
Delete a dictionary object.
|
|
||||||||||||
|
Dump a dictionary to an opened file pointer.
[Key]=[Value], one per line. It is Ok to provide stdout or stderr as output file pointers. |
|
||||||||||||||||
|
Get a value from a dictionary.
|
|
||||||||||||||||
|
Get a value from a dictionary, as a char.
|
|
||||||||||||||||
|
Get a value from a dictionary, as a double.
|
|
||||||||||||||||
|
Get a value from a dictionary, as an int.
|
|
|
Compute the hash key for a string.
|
|
|
Create a new dictionary object.
|
|
||||||||||||||||
|
Set a value in a dictionary.
It is Ok to provide a NULL value for val, but NULL values for the dictionary or the key are considered as errors: the function will return immediately in such a case. Notice that if you dictionary_set a variable to NULL, a call to dictionary_get will return a NULL value: the variable will be found, and its value (NULL) is returned. In other words, setting the variable content to NULL is equivalent to deleting the variable from the dictionary. It is not possible (in this implementation) to have a key in the dictionary without value. |
|
||||||||||||||||
|
Set a key in a dictionary, providing a double.
|
|
||||||||||||||||
|
Set a key in a dictionary, providing an int.
|
|
||||||||||||
|
Delete a key in a dictionary.
|
1.4.4