32 int (*f)(
const char *,
void *))
42 indxp = (
short*) ((
char*) p+
DICT_bsize(p)-
sizeof(short));
44 for (i = 0; i <= hi; i++)
51 char *info = (
char*)p + indxp[-i];
64 char *info = (
char*)p - indxp[-i];
65 memcpy(&subptr, info,
sizeof(
Dict_ptr));
78 indxp = (
short*) ((
char*) p+
DICT_bsize(p)-
sizeof(short));
88 int sub_flag,
void *client,
89 int (*f)(
const char *,
void *))
104 indxp = (
short*) ((
char*) p+
DICT_bsize(p)-
sizeof(short));
113 info = (
char*)p + indxp[-mid];
128 indxp[-mid] = indxp[-mid-1];
149 indxp[-mid] = indxp[-mid-1];
168 info = (
char*)p - indxp[-mid];
173 memcpy(&subptr, info,
sizeof(
Dict_ptr));
194 indxp[-mid] = indxp[-mid-1];
211 info = (
char*)p - indxp[-mid];
222 memcpy(info, &subptr,
sizeof(subptr));
230 indxp[-mid] = indxp[-mid-1];
254 if (subptr && sub_flag)
267 int (*f)(
const char *info,
void *client))
int dict_delete(Dict dict, const char *p)
deletes item from dictionary
static void dict_del_subtree(Dict dict, Dict_ptr ptr, void *client, int(*f)(const char *, void *))
int dict_delete_subtree(Dict dict, const char *p, void *client, int(*f)(const char *info, void *client))
delete items with a given prefix from dictionary
static int dict_del_string(Dict dict, const Dict_char *str, Dict_ptr ptr, int sub_flag, void *client, int(*f)(const char *, void *))
int dict_strncmp(const Dict_char *s1, const Dict_char *s2, size_t n)
int dict_bf_touch(Dict_BFile bf, int no)
int dict_bf_readp(Dict_BFile bf, int no, void **bufp)
int dict_strlen(const Dict_char *s)
int dict_strcmp(const Dict_char *s1, const Dict_char *s2)