dt_status_t tzmap_iterate()

in src/tzmapping.c [163:184]


dt_status_t tzmap_iterate(const tz_aliases_t *aliases, tz_alias_iterator_t **iterator, tz_alias_t **alias)
{
    tz_alias_iterator_t *it = NULL;
    if (aliases == NULL || iterator == NULL || alias == NULL) {
        return DT_INVALID_ARGUMENT;
    }
    if (*iterator == TZMAP_BEGIN) {
        *iterator = aliases->begin.next;
    }


    it = *iterator;
    if (it == NULL) {
        return DT_NO_MORE_ITEMS;
    }

    *alias = &it->node;
    *iterator = it->next;


    return DT_OK;
}