Module Mavryk_raw_protocol_001_PtAtLas.Apply_internal_results

Types representing results of applying an internal operation.

These are used internally by Apply.

internal_operation_contents are the internal operations as output in receipts. The type simply weakens Script_typed_ir.internal_operation_contents so that it is easier to define an encoding for it (i.e. we remove the typed parameter).

type 'kind internal_operation = {
  1. sender : Alpha_context.Destination.t;
  2. operation : 'kind internal_operation_contents;
  3. nonce : int;
}
type packed_internal_operation =
  1. | Internal_operation : 'kind internal_operation -> packed_internal_operation
val packed_internal_operations : Script_typed_ir.packed_internal_operation list -> packed_internal_operation list
type successful_transaction_result =
  1. | Transaction_to_contract_result of {
    1. storage : Alpha_context.Script.expr option;
    2. lazy_storage_diff : Alpha_context.Lazy_storage.diffs option;
    3. balance_updates : Alpha_context.Receipt.balance_updates;
    4. ticket_receipt : Ticket_receipt.t;
    5. originated_contracts : Contract_hash.t list;
    6. consumed_gas : Alpha_context.Gas.Arith.fp;
    7. storage_size : Mavryk_protocol_environment_001_PtAtLas.Z.t;
    8. paid_storage_size_diff : Mavryk_protocol_environment_001_PtAtLas.Z.t;
    9. allocated_destination_contract : bool;
    }
  2. | Transaction_to_sc_rollup_result of {
    1. consumed_gas : Alpha_context.Gas.Arith.fp;
    2. ticket_receipt : Ticket_receipt.t;
    }
  3. | Transaction_to_zk_rollup_result of {
    1. ticket_hash : Alpha_context.Ticket_hash.t;
    2. balance_updates : Alpha_context.Receipt.balance_updates;
    3. consumed_gas : Alpha_context.Gas.Arith.fp;
    4. paid_storage_size_diff : Mavryk_protocol_environment_001_PtAtLas.Z.t;
    }

Result of applying an internal transaction.

type successful_origination_result = {
  1. lazy_storage_diff : Alpha_context.Lazy_storage.diffs option;
  2. balance_updates : Alpha_context.Receipt.balance_updates;
  3. originated_contracts : Contract_hash.t list;
  4. consumed_gas : Alpha_context.Gas.Arith.fp;
  5. storage_size : Mavryk_protocol_environment_001_PtAtLas.Z.t;
  6. paid_storage_size_diff : Mavryk_protocol_environment_001_PtAtLas.Z.t;
}

Result of applying an internal origination.

type packed_internal_operation_result =
  1. | Internal_operation_result : 'kind internal_operation * 'kind internal_operation_result -> packed_internal_operation_result
val internal_operation : 'kind Script_typed_ir.internal_operation -> 'kind internal_operation