|
|
1.1 ! root 1: ! 2: #ifndef __DICT_H ! 3: #define __DICT_H ! 4: ! 5: typedef struct Dict Dict; ! 6: ! 7: struct Node { ! 8: struct Node *parent; ! 9: struct Node *child[2]; ! 10: char balance; /* +ve for right */ ! 11: char *key; ! 12: void *obj; ! 13: }; ! 14: ! 15: struct Dict { ! 16: struct Node *root; ! 17: int len; ! 18: }; ! 19: ! 20: void dict_init (struct Dict *tree); ! 21: void dict_free (struct Dict *tree); ! 22: struct Node *dict_get (struct Dict *tree, const char *key); ! 23: void dict_remove (struct Dict *tree, const char *key); ! 24: int dict_set (struct Dict *tree, const char *key, void *obj); ! 25: ! 26: #endif /* __DICT_H */ ! 27:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.