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.

RELATED TO dictModifyValue…