diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2004-06-28 22:40:31 +0000 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2004-06-28 22:40:31 +0000 |
commit | 979a3826c2fe809b9a491ac8878da7a575f6dfb6 (patch) | |
tree | 8532621c2b665204fafa07a9cddaca672cecee3f /include | |
parent | e6066cdd59ed5e145759d1a912cb71c5bd92addd (diff) | |
download | mailutils-979a3826c2fe809b9a491ac8878da7a575f6dfb6.tar.gz mailutils-979a3826c2fe809b9a491ac8878da7a575f6dfb6.tar.bz2 |
(iterator_create): Changed proto.
(iterator_attach,iterator_detach,iterator_advance)
(iterator_set_first,iterator_set_next)
(iterator_set_getitem,iterator_set_finished_p)
(iterator_set_dup,iterator_set_destroy): New functions.
Diffstat (limited to 'include')
-rw-r--r-- | include/mailutils/iterator.h | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/include/mailutils/iterator.h b/include/mailutils/iterator.h index ff8723161..ffb332c54 100644 --- a/include/mailutils/iterator.h +++ b/include/mailutils/iterator.h @@ -26,3 +26,3 @@ extern "C" { -extern int iterator_create __P ((iterator_t *, list_t)); +extern int iterator_create __P ((iterator_t *, void *)); extern int iterator_dup __P ((iterator_t *piterator, iterator_t orig)); @@ -34,2 +34,19 @@ extern int iterator_is_done __P ((iterator_t)); extern int iterator_get_list __P ((iterator_t iterator, list_t *plist)); + +extern int iterator_attach (iterator_t *root, iterator_t iterator); +extern int iterator_detach (iterator_t *root, iterator_t iterator); +extern void iterator_advance (iterator_t iterator, void *e); + +extern int iterator_set_first (iterator_t, int (*first) (void *)); +extern int iterator_set_next (iterator_t, int (*next) (void *)); +extern int iterator_set_getitem (iterator_t, + int (*getitem) (void *, void **)); +extern int iterator_set_finished_p (iterator_t, + int (*finished_p) (void *)); +extern int iterator_set_dup (iterator_t itr, + int (dup) (void **ptr, void *data)); +extern int iterator_set_destroy (iterator_t itr, + int (destroy) (iterator_t, void *data)); +extern int iterator_set_curitem_p (iterator_t itr, + int (*curitem_p) (void *, void *)); |