| mowgli_config.h | | mowgli_config.h | |
| | | | |
| skipping to change at line 133 | | skipping to change at line 133 | |
| slash. */ | | slash. */ | |
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1 | | #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1 | |
| | | | |
| /* Define to the address where bug reports for this package should be sent.
*/ | | /* Define to the address where bug reports for this package should be sent.
*/ | |
| #define PACKAGE_BUGREPORT "bugs+libmowgli@atheme.org" | | #define PACKAGE_BUGREPORT "bugs+libmowgli@atheme.org" | |
| | | | |
| /* Define to the full name of this package. */ | | /* Define to the full name of this package. */ | |
| #define PACKAGE_NAME "libmowgli" | | #define PACKAGE_NAME "libmowgli" | |
| | | | |
| /* Define to the full name and version of this package. */ | | /* Define to the full name and version of this package. */ | |
|
| #define PACKAGE_STRING "libmowgli 0.5.0" | | #define PACKAGE_STRING "libmowgli 0.6.0" | |
| | | | |
| /* Define to the one symbol short name of this package. */ | | /* Define to the one symbol short name of this package. */ | |
| #define PACKAGE_TARNAME "libmowgli" | | #define PACKAGE_TARNAME "libmowgli" | |
| | | | |
| /* Define to the version of this package. */ | | /* Define to the version of this package. */ | |
|
| #define PACKAGE_VERSION "0.5.0" | | #define PACKAGE_VERSION "0.6.0" | |
| | | | |
| /* Define to 1 if you have the ANSI C header files. */ | | /* Define to 1 if you have the ANSI C header files. */ | |
| #define STDC_HEADERS 1 | | #define STDC_HEADERS 1 | |
| | | | |
| /* Define to empty if `const' does not conform to ANSI C. */ | | /* Define to empty if `const' does not conform to ANSI C. */ | |
| /* #undef const */ | | /* #undef const */ | |
| | | | |
End of changes. 2 change blocks. |
| 2 lines changed or deleted | | 2 lines changed or added | |
|
| mowgli_dictionary.h | | mowgli_dictionary.h | |
| | | | |
| skipping to change at line 34 | | skipping to change at line 34 | |
| | | | |
| #ifndef __MOWGLI_DICTIONARY_H__ | | #ifndef __MOWGLI_DICTIONARY_H__ | |
| #define __MOWGLI_DICTIONARY_H__ | | #define __MOWGLI_DICTIONARY_H__ | |
| | | | |
| struct mowgli_dictionary_; /* defined in src/dictionary.c */ | | struct mowgli_dictionary_; /* defined in src/dictionary.c */ | |
| | | | |
| typedef struct mowgli_dictionary_ mowgli_dictionary_t; | | typedef struct mowgli_dictionary_ mowgli_dictionary_t; | |
| | | | |
| typedef struct mowgli_dictionary_elem_ mowgli_dictionary_elem_t; | | typedef struct mowgli_dictionary_elem_ mowgli_dictionary_elem_t; | |
| | | | |
|
| | | typedef int (*mowgli_dictionary_comparator_func_t)(const char *a, const cha | |
| | | r *b); | |
| | | | |
| struct mowgli_dictionary_elem_ | | struct mowgli_dictionary_elem_ | |
| { | | { | |
| mowgli_dictionary_elem_t *left, *right, *prev, *next; | | mowgli_dictionary_elem_t *left, *right, *prev, *next; | |
| void *data; | | void *data; | |
| char *key; | | char *key; | |
|
| | | int position; | |
| }; | | }; | |
| | | | |
| /* | | /* | |
| * mowgli_dictionary_iteration_state_t, private. | | * mowgli_dictionary_iteration_state_t, private. | |
| */ | | */ | |
| struct mowgli_dictionary_iteration_state_ | | struct mowgli_dictionary_iteration_state_ | |
| { | | { | |
| mowgli_dictionary_elem_t *cur, *next; | | mowgli_dictionary_elem_t *cur, *next; | |
| }; | | }; | |
| | | | |
| typedef struct mowgli_dictionary_iteration_state_ mowgli_dictionary_iterati
on_state_t; | | typedef struct mowgli_dictionary_iteration_state_ mowgli_dictionary_iterati
on_state_t; | |
| | | | |
| /* | | /* | |
| * this is a convenience macro for inlining iteration of dictionaries. | | * this is a convenience macro for inlining iteration of dictionaries. | |
| */ | | */ | |
| #define MOWGLI_DICTIONARY_FOREACH(element, state, dict) for (mowgli_diction
ary_foreach_start((dict), (state)); (element = mowgli_dictionary_foreach_cu
r((dict), (state))); mowgli_dictionary_foreach_next((dict), (state))) | | #define MOWGLI_DICTIONARY_FOREACH(element, state, dict) for (mowgli_diction
ary_foreach_start((dict), (state)); (element = mowgli_dictionary_foreach_cu
r((dict), (state))); mowgli_dictionary_foreach_next((dict), (state))) | |
| | | | |
| /* | | /* | |
|
| * mowgli_dictionary_create() creates a new dictionary tree of the defined
resolution. | | * mowgli_dictionary_create() creates a new dictionary tree. | |
| * compare_cb is the comparison function, typically strcmp, strcasecmp or | | * compare_cb is the comparison function, typically strcmp, strcasecmp or | |
| * irccasecmp. | | * irccasecmp. | |
| */ | | */ | |
|
| extern mowgli_dictionary_t *mowgli_dictionary_create(int (*compare_cb)(cons | | extern mowgli_dictionary_t *mowgli_dictionary_create(mowgli_dictionary_comp | |
| t char *a, const char *b)); | | arator_func_t compare_cb); | |
| | | | |
| | | /* | |
| | | * mowgli_dictionary_create_named() creates a new dictionary tree which has | |
| | | a name. | |
| | | * name is the name, compare_cb is the comparator. | |
| | | */ | |
| | | extern mowgli_dictionary_t *mowgli_dictionary_create_named(const char *name | |
| | | , mowgli_dictionary_comparator_func_t compare_cb); | |
| | | | |
| | | /* | |
| | | * mowgli_dictionary_set_comparator_func() resets the comparator used for l | |
| | | ookups and | |
| | | * insertions in the DTree structure. | |
| | | */ | |
| | | extern void mowgli_dictionary_set_comparator_func(mowgli_dictionary_t *dict | |
| | | , | |
| | | mowgli_dictionary_comparator_func_t compare_cb); | |
| | | | |
| | | /* | |
| | | * mowgli_dictionary_get_comparator_func() returns the comparator used for | |
| | | lookups and | |
| | | * insertions in the DTree structure. | |
| | | */ | |
| | | extern mowgli_dictionary_comparator_func_t mowgli_dictionary_get_comparator | |
| | | _func(mowgli_dictionary_t *dict); | |
| | | | |
| | | /* | |
| | | * mowgli_dictionary_get_linear_index() returns the linear index of an obje | |
| | | ct in the | |
| | | * DTree structure. | |
| | | */ | |
| | | extern int mowgli_dictionary_get_linear_index(mowgli_dictionary_t *dict, co | |
| | | nst char *key); | |
| | | | |
| /* | | /* | |
| * mowgli_dictionary_destroy() destroys all entries in a dtree, and also op
tionally calls | | * mowgli_dictionary_destroy() destroys all entries in a dtree, and also op
tionally calls | |
| * a defined callback function to destroy any data attached to it. | | * a defined callback function to destroy any data attached to it. | |
| */ | | */ | |
| extern void mowgli_dictionary_destroy(mowgli_dictionary_t *dtree, | | extern void mowgli_dictionary_destroy(mowgli_dictionary_t *dtree, | |
| void (*destroy_cb)(mowgli_dictionary_elem_t *delem, void *privdata), | | void (*destroy_cb)(mowgli_dictionary_elem_t *delem, void *privdata), | |
| void *privdata); | | void *privdata); | |
| | | | |
| /* | | /* | |
| | | | |
End of changes. 4 change blocks. |
| 3 lines changed or deleted | | 40 lines changed or added | |
|