package tezos-protocol-016-PtMumbai

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

The History_cache.t structure is basically a bounded lookup table of t skip lists. (See Bounded_history_repr.S). In the L1 layer, the capacity (bound) is set to zero (nothing is remembered). By contrast, the rollup node uses a history cache with a (sufficiently) large capacity to participate in all potential refutation games occurring during the challenge period. Indeed, the successive recent skip-lists stored in the cache are needed to produce proofs involving slots' pages.

type t
type key = hash
type value = t
val empty : capacity:int64 -> t

empty ~capacity returns a new table whose maximum capacity is given.

Encoding for values of type t

Pretty-printer for values of type t

val find : key -> t -> value option

find key t returns Some value if there exists some value associated to key in the table, and None otherwise.

type Tezos_protocol_environment_016_PtMumbai.Error_monad.error +=
  1. | Key_bound_to_different_value of {
    1. key : key;
    2. existing_value : value;
    3. given_value : value;
    }

remember key value t inserts a new entry (key |-> value) in t.

If key already exists in t, its associated binding value' should be equal to value. In this case, t is returned unchanged. Otherwise, an error Key_bound_to_different_value is returned.

If key is not already present in t, the new binding (key |-> value) is inserted in t. If the number of elements would exceed t's capacity after the insertion of the new binding, the oldest binding is removed from t.

The structure t is returned unchanged if its capacity is negative or null.

module Internal_for_tests : sig ... end
OCaml

Innovation. Community. Security.