Module Octez_smart_rollup_node.Pvm_plugin_sig

type 'fuel eval_state_info = {
  1. state_hash : Octez_smart_rollup.State_hash.t;
    (*

    Hash of state.

    *)
  2. tick : Z.t;
    (*

    Tick of state.

    *)
  3. inbox_level : int32;
    (*

    Inbox level in which messages are evaluated.

    *)
  4. message_counter_offset : int;
    (*

    Offset for message index, which corresponds to the number of messages of the inbox already evaluated.

    *)
  5. remaining_fuel : 'fuel;
    (*

    Fuel remaining for the evaluation of the inbox.

    *)
  6. remaining_messages : string list;
    (*

    Messages of the inbox that remain to be evaluated.

    *)
}

Evaluation state information for the PVM.

type ('fuel, 'state) eval_state = {
  1. state : 'state;
    (*

    The actual PVM state.

    *)
  2. info : 'fuel eval_state_info;
    (*

    Information about state. These become invalid as soon as state is modified.

    *)
}
type 'fuel eval_result = {
  1. state_info : 'fuel eval_state_info;
  2. num_ticks : Z.t;
  3. num_messages : int;
}

Evaluation result for the PVM which contains information about the final state.

module Tick_state_cache : Aches_lwt.Lache.MAP_RESULT with type key = Z.t
val make_state_cache : int -> ('a, 'b) Tick_state_cache.t
module type FUELED_PVM = sig ... end
module type S = sig ... end