package tezos-protocol-alpha

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

This storage contains for each rollup and inbox level not yet cemented the level of publication of the first commitment. This is used to compute the curfew for a given rollup and inbox level.

The storage size is bounded for each rollup by

max_lookahead / commitment_period

Since the storage is cleaned when commitments are cemented, this storage space is only temporarily bought by stakers with their deposits.

type context = t
type key = Raw_level_repr.t

An abstract type for keys

type value = Raw_level_repr.t

The type of values

Tells if a given key is already bound to a storage bucket. Consumes Gas_repr.read_bytes_cost Z.zero.

Retrieve a value from the storage bucket at a given key ; returns Storage_errorMissing_key if the key is not set ; returns Storage_errorCorrupted_data if the deserialisation fails. Consumes Gas_repr.read_bytes_cost <size of the value>.

Retrieve a value from the storage bucket at a given key ; returns None if the value is not set ; returns Storage_error Corrupted_data if the deserialisation fails. Consumes Gas_repr.read_bytes_cost <size of the value> if present or Gas_repr.read_bytes_cost Z.zero.

Updates the content of a bucket ; returns A Storage_Error Missing_key if the value does not exists. Consumes serialization cost. Consumes Gas_repr.write_bytes_cost <size of the new value>. Returns the difference from the old to the new size.

Allocates a storage bucket at the given key and initializes it ; returns a Storage_errorExisting_key if the bucket exists. Consumes serialization cost. Consumes Gas_repr.write_bytes_cost <size of the value>. Returns the size.

Allocates a storage bucket at the given key and initializes it with a value ; just updates it if the bucket exists. Consumes serialization cost. Consumes Gas_repr.write_bytes_cost <size of the new value>. Returns the difference from the old (maybe 0) to the new size, and a boolean indicating if a value was already associated to this key.

When the value is Some v, allocates the data and initializes it with v ; just updates it if the bucket exists. When the value is None, delete the storage bucket when the value ; does nothing if the bucket does not exists. Consumes serialization cost. Consumes the same gas cost as either remove or init_set. Returns the difference from the old (maybe 0) to the new size, and a boolean indicating if a value was already associated to this key.

Delete a storage bucket and its contents ; returns a Storage_errorMissing_key if the bucket does not exists. Consumes Gas_repr.write_bytes_cost Z.zero. Returns the freed size.

Removes a storage bucket and its contents ; does nothing if the bucket does not exists. Consumes Gas_repr.write_bytes_cost Z.zero. Returns the freed size, and a boolean indicating if a value was already associated to this key.

val keys_unaccounted : context -> key list Tezos_protocol_environment_alpha.Lwt.t

Returns the list of all storage bucket keys. Not carbonated (i.e. gas is not consumed); use with care.

OCaml

Innovation. Community. Security.