Mavryk_raw_protocol_alpha.Unstaked_frozen_deposits_repr
Datatype for a map from cycle to deposits, where all unslashable cycles are squashed.
Expected to be used for a small number of cycles at a time, typically bounded by consensus_rights_delay + max_slashing_period
plus a small constant.
See Unstaked_frozen_deposits_storage
for more info on unstaked frozen deposits.
To be used locally, do not preserve values of this type over cycles.
val empty : unslashable_cycle:Cycle_repr.t option -> squashed
val encoding : t Mavryk_protocol_environment_alpha.Data_encoding.t
val squash_unslashable :
unslashable_cycle:Cycle_repr.t option ->
t ->
squashed Mavryk_protocol_environment_alpha.Error_monad.tzresult
Once read, t
must be converted to squashed
with squash_unslashable
to be used efficiently. For a given unslashable_cycle
, squash_unslashable ~unslashable_cycle
is idempotent.
val get : Cycle_repr.t -> squashed -> Deposits_repr.t