Project

General

Profile

Feature #366 ยป 0045-iterator.-ch-Replace-NULLs-with-nullptrs.patch

Marko Lindqvist, 03/29/2024 04:55 AM

View differences:

utility/iterator.c
***********************************************************************/
static void *invalid_iter_get(const struct iterator *it)
{
return NULL;
return nullptr;
}
/*******************************************************************//**
......
it->next = invalid_iter_next;
it->get = invalid_iter_get;
it->valid = invalid_iter_valid;
return it;
}
utility/iterator.h
/*******************************************************************//**
Returns the item currently pointed to by the iterator. Note that the
iterator could point to an item whose value is NULL; to actually test
whether the iterator is still valid (e.g. has not gone past the
end of the sequence), use iterator_valid().
iterator could point to an item whose value is nullptr; to actually
test whether the iterator is still valid (e.g. has not gone past
the end of the sequence), use iterator_valid().
***********************************************************************/
static inline void *iterator_get(const struct iterator *it)
{
......
a 'struct iterator' and takes as its first argument a pointer
to memory large enough to hold a 'TYPE_it' (this amount must
match the result of FUNC_size()). NB: This function must not
return NULL; it must return a valid iterator pointing to the
first element in the sequence, or an invalid iterator.
return nullptr; it must return a valid iterator pointing to
the first element in the sequence, or an invalid iterator.
... - Zero or more extra arguments that 'FUNC_init' expects.
***************************************************************************/
#ifdef __cplusplus
......
} while (FALSE)
/***************************************************************************
Iterator init functions cannot return NULL, so this dummy helper function
can be used to return a "generic invalid iterator" that will just exit
out of generic_iterate. Its size is just sizeof(struct iterator), so it
will fit into any iterator's allocated stack memory.
Iterator init functions cannot return nullptr, so this dummy helper
function can be used to return a "generic invalid iterator" that will
just exit out of generic_iterate. Its size is just sizeof(struct iterator),
so it will fit into any iterator's allocated stack memory.
***************************************************************************/
struct iterator *invalid_iter_init(struct iterator *it);
    (1-1/1)