Module Tezos_raw_protocol_016_PtMumbai.Sc_rollup_outbox_message_repr

This module defines a data type t that represents messages from Layer 2 to Layer 1.

They are part of the Rollup Management Protocol that defines the communication protocol for exchanging messages between Layer 1 and Layer 2 for smart-contract rollups.

An outbox-message consists of a sequence of transactions to L1 smart-contract accounts. All transactions contained in a message are intended to be executed as a batch.

type transaction = {
  1. unparsed_parameters : Script_repr.expr;
    (*

    The payload.

    *)
  2. destination : Contract_hash.t;
    (*

    The recipient contract.

    *)
  3. entrypoint : Entrypoint_repr.t;
    (*

    Entrypoint of the destination.

    *)
}

A transaction from L2 to L1.

type t =
  1. | Atomic_transaction_batch of {
    1. transactions : transaction list;
    }

A type representing messages from Layer 2 to Layer 1.

type serialized = private string

deserialize ctxt bs decodes an outbox message value from the given data bs. The function involves parsing Micheline expressions to typed values.

serialize msg serializes the given outbox message msg.

val unsafe_of_string : string -> serialized

unsafe_of_string s builds a serialized value out of a string. You must understand the invariants of serialized to do so.

val unsafe_to_string : serialized -> string

unsafe_to_string s builds a string out of a serialized value. You must understand the invariants of serialized to manipulate the resulting string.