Module Evm_node_lib_dev.Transaction_format

val max_input_size : int
val smart_rollup_address_size : int
val transaction_tag_size : int
val framing_protocol_tag_size : int
type transaction =
  1. | Simple of string
  2. | NewChunked of string * int * string
  3. | Chunk of string
val encode_transaction : smart_rollup_address:string -> transaction -> string
val chunk_transaction : tx_hash:string -> tx_raw:string -> (string * transaction list, 'a) Stdlib.result
val make_evm_inbox_transactions : string -> (string * transaction list, 'a) Stdlib.result
val make_encoded_messages : smart_rollup_address:string -> string -> (Evm_node_lib_dev_encoding.Ethereum_types.hash * string list, 'a) Stdlib.result

make_encoded_messages ~smart_rollup_address raw_tx returns the hash of the transaction, and a list of transactions to include in the inbox.

  • smart_rollup_address is encoded on 20 bytes
  • raw_tx is an ethereum transaction in hex format (without the 0x prefix).

All messages go through the same encoding, but will only be chunked if necessary.