External_validator.Processing
type state = {
context_index : Tezos_context_ops.Context_ops.index;
cache : Tezos_context_ops.Context_ops.block_cache option;
cached_result : (Block_validation.apply_result
* Tezos_context_ops.Context_ops.t)
option;
headless : Tezos_profiler.Profiler.instance;
profiler_headless : Tezos_profiler.Profiler.instance;
}
val load_protocol :
Tezos_base.TzPervasives.Protocol_hash.t ->
string ->
(unit, Tezos_base.TzPervasives.error list) Stdlib.result Lwt.t
val with_retry_to_load_protocol :
string ->
(unit -> ('a, Tezos_base.TzPervasives.error list) Stdlib.result Lwt.t) ->
('a, Tezos_base.TzPervasives.error list) Stdlib.result Lwt.t
val initial_state :
External_validation.parameters ->
(state, 'a) Stdlib.result Lwt.t
val handle_request :
'a. External_validation.parameters ->
state ->
'a External_validation.request ->
[ `Continue of
('a
* (Tezos_profiler.Profiler.report option
* Tezos_profiler.Profiler.report option)
option)
Tezos_base.TzPervasives.tzresult
* state
| `Stop ]
Lwt.t