Mavryk_raw_protocol_alpha.Zk_rollup_storagetype Mavryk_protocol_environment_alpha.Error_monad.error += | Zk_rollup_does_not_exist of Zk_rollup_repr.tEmitted when trying to perform an operation over a ZK rollup that hasn't been initialised.
*)| Zk_rollup_invalid_op_code of intEmitted when trying to add to the pending list and operation with an invalid op code.
*)| Zk_rollup_pending_list_too_shortEmitted when trying to process more public operations than those available in the pending list.
*)These errors are only to be matched in tests.
val account :
Raw_context.t ->
Zk_rollup_repr.t ->
(Raw_context.t * Zk_rollup_account_repr.t)
Mavryk_protocol_environment_alpha.Error_monad.tzresult
Mavryk_protocol_environment_alpha.Lwt.taccount context rollup fetches the ZK rollup's account from the storage.
val pending_op :
Raw_context.t ->
Zk_rollup_repr.t ->
int64 ->
(Raw_context.t * (Zk_rollup_operation_repr.t * Ticket_hash_repr.t option))
Mavryk_protocol_environment_alpha.Error_monad.tzresult
Mavryk_protocol_environment_alpha.Lwt.tval originate :
Raw_context.t ->
Zk_rollup_account_repr.static ->
init_state:Zk_rollup_state_repr.t ->
(Raw_context.t * Zk_rollup_repr.t * Mavryk_protocol_environment_alpha.Z.t)
Mavryk_protocol_environment_alpha.Error_monad.tzresult
Mavryk_protocol_environment_alpha.Lwt.toriginate context static ~init_state produces an address a for a ZK rollup storage using the origination_nonce from the context. This function also initializes the storage, indexing the initial ZKRU account by a.
Returns the new context and ZKRU address, alongside the size of the new account.
val add_to_pending :
Raw_context.t ->
Zk_rollup_repr.t ->
(Zk_rollup_operation_repr.t * Ticket_hash_repr.t option) list ->
(Raw_context.t * Mavryk_protocol_environment_alpha.Z.t)
Mavryk_protocol_environment_alpha.Error_monad.tzresult
Mavryk_protocol_environment_alpha.Lwt.tadd_to_pending context rollup operations appends to the ZK rollup's pending list a list of L2 operations. Returns the new context alongside the size of the new operations.
May fail with:
Zk_rollup_invalid_op_code op_code if the op_code of one of the operations is greater or equal to the number of declared operations for this rollup.val get_pending_length :
Raw_context.t ->
Zk_rollup_repr.t ->
(Raw_context.t * int) Mavryk_protocol_environment_alpha.Error_monad.tzresult
Mavryk_protocol_environment_alpha.Lwt.tget_pending_length context rollup returns the length of a ZK rollup's pending list.
val get_prefix :
Raw_context.t ->
Zk_rollup_repr.t ->
int ->
(Raw_context.t
* (Zk_rollup_operation_repr.t * Ticket_hash_repr.t option) list)
Mavryk_protocol_environment_alpha.Error_monad.tzresult
Mavryk_protocol_environment_alpha.Lwt.tget_prefix context rollup n returns the prefix of length n of the rollup's pending list.
May fail with:
Zk_rollup_pending_list_too_short if n is greater than the length of the pending list.Zk_rollup_negative_length if n is negative.val update :
Raw_context.t ->
Zk_rollup_repr.t ->
pending_to_drop:int ->
new_account:Zk_rollup_account_repr.t ->
Raw_context.t Mavryk_protocol_environment_alpha.Error_monad.tzresult
Mavryk_protocol_environment_alpha.Lwt.tupdate context rollup ~pending_to_drop ~new_account sets the rollup's account to new_account. Additionally, it removes the first pending_to_drop entries from the rollup's pending list. Returns the new context.
May fail with:
Zk_rollup_pending_list_too_short if pending_to_drop is greater than the length of the pending list.Zk_rollup_negative_length if pending_to_drop is negative.val assert_exist :
Raw_context.t ->
Zk_rollup_repr.t ->
Raw_context.t Mavryk_protocol_environment_alpha.Error_monad.tzresult
Mavryk_protocol_environment_alpha.Lwt.tassert_exist context rollup asserts that rollup has been initialized. Returns the new context.
May fail with:
Zk_rollup_does_not_exist if rollup is not found.val exists :
Raw_context.t ->
Zk_rollup_repr.t ->
(Raw_context.t * bool) Mavryk_protocol_environment_alpha.Error_monad.tzresult
Mavryk_protocol_environment_alpha.Lwt.texists context rollup returns a boolean representing whether rollup has been initialized.