GRASS GIS 8 Programmer's Manual
8.5.0dev(2024)-f63024f571
|
Go to the source code of this file.
Functions | |
struct avl_table * | avl_create (avl_comparison_func *compare, void *param, struct libavl_allocator *allocator) |
void * | avl_find (const struct avl_table *tree, const void *item) |
void ** | avl_probe (struct avl_table *tree, void *item) |
void * | avl_insert (struct avl_table *table, void *item) |
void * | avl_replace (struct avl_table *table, void *item) |
void * | avl_delete (struct avl_table *tree, const void *item) |
void | avl_t_init (struct avl_traverser *trav, struct avl_table *tree) |
void * | avl_t_first (struct avl_traverser *trav, struct avl_table *tree) |
void * | avl_t_last (struct avl_traverser *trav, struct avl_table *tree) |
void * | avl_t_find (struct avl_traverser *trav, struct avl_table *tree, void *item) |
void * | avl_t_insert (struct avl_traverser *trav, struct avl_table *tree, void *item) |
void * | avl_t_copy (struct avl_traverser *trav, const struct avl_traverser *src) |
void * | avl_t_next (struct avl_traverser *trav) |
void * | avl_t_prev (struct avl_traverser *trav) |
void * | avl_t_cur (struct avl_traverser *trav) |
void * | avl_t_replace (struct avl_traverser *trav, void *new) |
struct avl_table * | avl_copy (const struct avl_table *org, avl_copy_func *copy, avl_item_func *destroy, struct libavl_allocator *allocator) |
void | avl_destroy (struct avl_table *tree, avl_item_func *destroy) |
void * | avl_malloc (struct libavl_allocator *allocator, size_t size) |
void | avl_free (struct libavl_allocator *allocator, void *block) |
void() | avl_assert_insert (struct avl_table *table, void *item) |
void *() | avl_assert_delete (struct avl_table *table, void *item) |
Variables | |
struct libavl_allocator | avl_allocator_default = {avl_malloc, avl_free} |
void*() avl_assert_delete | ( | struct avl_table * | table, |
void * | item | ||
) |
void() avl_assert_insert | ( | struct avl_table * | table, |
void * | item | ||
) |
struct avl_table* avl_copy | ( | const struct avl_table * | org, |
avl_copy_func * | copy, | ||
avl_item_func * | destroy, | ||
struct libavl_allocator * | allocator | ||
) |
Definition at line 698 of file avl.c.
References AVL_MAX_HEIGHT.
struct avl_table* avl_create | ( | avl_comparison_func * | compare, |
void * | param, | ||
struct libavl_allocator * | allocator | ||
) |
void* avl_delete | ( | struct avl_table * | tree, |
const void * | item | ||
) |
Definition at line 230 of file avl.c.
References AVL_MAX_HEIGHT.
void avl_destroy | ( | struct avl_table * | tree, |
avl_item_func * | destroy | ||
) |
Definition at line 785 of file avl.c.
References assert, avl_table::avl_alloc, avl_node::avl_data, avl_node::avl_link, avl_table::avl_param, avl_table::avl_root, libavl_allocator::libavl_free, and NULL.
void* avl_find | ( | const struct avl_table * | tree, |
const void * | item | ||
) |
Definition at line 64 of file avl.c.
References assert, avl_table::avl_root, and NULL.
void avl_free | ( | struct libavl_allocator * | allocator, |
void * | block | ||
) |
void* avl_malloc | ( | struct libavl_allocator * | allocator, |
size_t | size | ||
) |
void** avl_probe | ( | struct avl_table * | tree, |
void * | item | ||
) |
Definition at line 87 of file avl.c.
References assert, AVL_MAX_HEIGHT, avl_table::avl_root, and NULL.
Referenced by avl_t_insert().
void* avl_t_copy | ( | struct avl_traverser * | trav, |
const struct avl_traverser * | src | ||
) |
Definition at line 546 of file avl.c.
References assert, avl_node::avl_data, avl_table::avl_generation, avl_traverser::avl_generation, avl_traverser::avl_height, avl_traverser::avl_node, avl_traverser::avl_stack, avl_traverser::avl_table, NULL, and src.
void* avl_t_cur | ( | struct avl_traverser * | trav | ) |
Definition at line 655 of file avl.c.
References assert, avl_node::avl_data, avl_traverser::avl_node, and NULL.
void* avl_t_find | ( | struct avl_traverser * | trav, |
struct avl_table * | tree, | ||
void * | item | ||
) |
Definition at line 484 of file avl.c.
References assert, avl_table::avl_generation, avl_traverser::avl_generation, avl_traverser::avl_height, avl_table::avl_root, avl_traverser::avl_table, and NULL.
void* avl_t_first | ( | struct avl_traverser * | trav, |
struct avl_table * | tree | ||
) |
Definition at line 432 of file avl.c.
References assert, avl_table::avl_generation, avl_traverser::avl_generation, avl_traverser::avl_height, AVL_MAX_HEIGHT, avl_traverser::avl_node, avl_table::avl_root, avl_traverser::avl_stack, avl_traverser::avl_table, NULL, and x.
void avl_t_init | ( | struct avl_traverser * | trav, |
struct avl_table * | tree | ||
) |
Definition at line 421 of file avl.c.
References avl_table::avl_generation, avl_traverser::avl_generation, avl_traverser::avl_height, avl_traverser::avl_node, avl_traverser::avl_table, and NULL.
Referenced by avl_t_insert().
void* avl_t_insert | ( | struct avl_traverser * | trav, |
struct avl_table * | tree, | ||
void * | item | ||
) |
Definition at line 520 of file avl.c.
References assert, avl_node::avl_data, avl_table::avl_generation, avl_traverser::avl_generation, avl_traverser::avl_node, avl_probe(), avl_t_init(), avl_traverser::avl_table, and NULL.
void* avl_t_last | ( | struct avl_traverser * | trav, |
struct avl_table * | tree | ||
) |
Definition at line 457 of file avl.c.
References assert, avl_table::avl_generation, avl_traverser::avl_generation, avl_traverser::avl_height, AVL_MAX_HEIGHT, avl_traverser::avl_node, avl_table::avl_root, avl_traverser::avl_stack, avl_traverser::avl_table, NULL, and x.
void* avl_t_next | ( | struct avl_traverser * | trav | ) |
Definition at line 567 of file avl.c.
References assert, avl_table::avl_generation, avl_traverser::avl_generation, avl_traverser::avl_table, NULL, and x.
void* avl_t_prev | ( | struct avl_traverser * | trav | ) |
Definition at line 612 of file avl.c.
References assert, avl_table::avl_generation, avl_traverser::avl_generation, avl_traverser::avl_table, NULL, and x.
void* avl_t_replace | ( | struct avl_traverser * | trav, |
void * | new | ||
) |
Definition at line 665 of file avl.c.
References assert, avl_node::avl_data, avl_traverser::avl_node, and NULL.
struct libavl_allocator avl_allocator_default = {avl_malloc, avl_free} |