dictModifyValue(3)

NAME
dictModifyValue - create/modify an item.

SYNOPSIS

#include <util/dict.h>

NEOERR *dictModifyValue(dictCtx dict, const char *id, dictNewValueCB new_cb,
                     dictUpdateValueCB update, void *rock);

ARGUMENTS
dict - dictionary to add pair to.
id - identifier of value
new - function to call to create new value (may be NULL)
update - function to call to modify value (if NULL, the old
value is freed, and <new> is used)
rock - context to pass to <new> or <update>.

DESCRIPTION
Finds <id>'s value and calls <update>. If <id> is not in <dict>, calls <new> to obtain a new value.

MT-Level: Safe if <dict> thread-safe.

RETURN VALUE
None.

SEE ALSO
dictDestroy(3), dictCleanup(3), dictReleaseLock(3), dictRemove(3), dictNext(3), dictCreate(3), dictSetValue(3), dictModifyValue(3), dictSearch