Name
dict_dec_or_remove — Decrement a counter in a dictionary of counters or deletes it if it becomes zero or negative.
Synopsis
dict_dec_or_remove
(
|
inout dict dictionary , |
| in key any , | |
in
value_decrement
integer
); |
Description
The function checks whether dict contains
key . If it isn't so then the function
checks the datatype of the value associated with the key. An error
42000 is signalled in case of non-integer value or a negative
integer value. If the value is positive and greater than
value_decrement then
value_decrement is subtracted from it and
the result become the new value associated with
key in dict . If the
value is positive and less than or equal to
value_decrement then
key is removed from
dict . If key is not in the dictionary then
the dictionary remains unchanged.
Informally, the function reverts the effect of
dict_inc_or_add .
Parameters
dict
Dictionary of counters. The NULL value is equivalent to an empty dictionary.
key
Key of a dictionary item to process.
value decrement
A nonnegative integer (typically 1) that is subtracted from the
value associated with key .
Return Types
The function returns the changed value associated with the
key , or zero in any other case.