Transaction wrapper for a BTreeMap
entry value of given key
A ValTransaction
that wraps a BTreeMap
. It supports basic BTreeMap
operations like get
,
get_mut
, insert
and remove
. Incremental modification of insert
, remove
and get_mut
are stored in staging
. On commit
, it will apply the changes stored in staging
to the in
memory btree map. When serve get
and get_mut
, it merges the value stored in staging
and
tree_ref
.
A mutable guard to the value of the corresponding key of a BTreeMapTransaction
.
The staging value is initialized in a lazy manner, that is, the staging value is only cloned
from the original value only when itβs being mutably deref.
Fragments of a streaming job.
Transaction wrapper for a variable.
In first deref_mut
call, a copy of the original value will be assigned to new_value
and all subsequent modifications will be applied to the new_value
.
When commit
is called, the change to new_value
will be applied to the orig_value_ref
When abort
is called, the VarTransaction
is dropped and the local memory value is
untouched.