pub fn clear_storage( child_info: &ChildInfo, maybe_limit: Option<u32>, _maybe_cursor: Option<&[u8]> ) -> MultiRemovalResults
Partially clear the child storage of each key-value pair.
A limit should always be provided through
maybe_limit. This is one fewer than the
maximum number of backend iterations which may be done by this operation and as such
represents the maximum number of backend deletions which may happen. A limit of zero
implies that no keys will be deleted, though there may be a single iteration done.
The limit can be used to partially delete storage items in case it is too large or costly to delete all in a single operation.
A cursor may be passed in to this operation with
None should only be
passed once (in the initial call) for any attempt to clear storage. In general, subsequent calls
operating on the same prefix should pass
Some and this value should be equal to the
previous call result’s
maybe_cursor field. The only exception to this is when you can
guarantee that the subsequent call is in a new block; in this case the previous call’s result
cursor need not be passed in an a
None may be passed instead. This exception may be useful
then making this call solely from a block-hook such as
MultiRemovalResults to inform about the result. Once the
maybe_cursor field is
None, then no further items remain to be deleted.
NOTE: After the initial call for any given child storage, it is important that no keys further keys are inserted. If so, then they may or may not be deleted by subsequent calls.
Please note that keys which are residing in the overlay for the child are deleted without
counting towards the