|
libdacav 0.9.0
|
Iterator implementation. More...
#include <dacav/dacav.h>Go to the source code of this file.
Typedefs | |
| typedef struct diter | diter_t |
| Opaque type for iterators. | |
| typedef int(* | dhasnext_t )(void *iterable) |
| Type defining the Has-Next function for iterators. | |
| typedef void *(* | dnext_t )(void *iterable) |
| Type defining the Next function for iterators. | |
| typedef void(* | dremove_t )(void *iterable) |
| Type defining the Remove function for iterators. | |
| typedef void(* | dreplace_t )(void *iterable, void *new_val) |
| Type defining the Replace function for iterators. | |
Functions | |
| int | diter_hasnext (diter_t *i) |
| Has-Next predicate, checks if the iterator has at least another element. | |
| void * | diter_next (diter_t *i) |
| Get-Next function, extracts the next element of the iteration. | |
| void | diter_remove (diter_t *i) |
| Remove function, removes from the structure the current element. | |
| void | diter_replace (diter_t *i, void *n) |
| Replace function, replaces the current element of the structure. | |
| diter_t * | diter_new (dnext_t nx, dhasnext_t hnx, dremove_t rm, dreplace_t rep, unsigned iterable_size) |
| Raw constructor for iterator. | |
| void * | diter_get_iterable (diter_t *i) |
| Getter for the iterable structure. | |
| void | diter_free (diter_t *it) |
| Destructor for the raw iterator. | |
Iterator implementation.