Module Mavryk_raw_protocol_alpha.Zk_rollup_repr

module Address : sig ... end

A ZK rollup has an address starting with "epx1". ZKRU addresses have a length of 20 bytes, which means that they have an injective encoding as BLS12-381 scalars.

type t = Address.t
val to_scalar : t -> Zk_rollup_scalar.t

to_scalar address returns the scalar corresponding to address

type pending_list =
  1. | Empty of {
    1. next_index : int64;
    }
    (*

    Empty pending list but starting point will be next_index when adding to the list

    *)
  2. | Pending of {
    1. next_index : int64;
    2. length : int;
    }
    (*

    Pending list with (next_index - length) .. (next_index - 1). length is encoded as a uint16.

    *)

Description of a ZK rollup's pending list.

module Index : Storage_description.INDEX with type t = t
val in_memory_size : t -> Cache_memory_helpers.sint

in_memory_size zk_rollup returns the number of bytes a zk_rollup address uses in RAM.

module Internal_for_tests : sig ... end