Sourcetype conflict_handler =
existing_operation:(Tezos_crypto.Hashed.Operation_hash.t * operation) ->
new_operation:(Tezos_crypto.Hashed.Operation_hash.t * operation) ->
[ `Keep | `Replace ] Sourcetype operation_conflict = | Operation_conflict of {existing : Tezos_crypto.Hashed.Operation_hash.t;new_operation : Tezos_crypto.Hashed.Operation_hash.t;
}
Sourcetype add_result = | Added| Replaced of {removed : Tezos_crypto.Hashed.Operation_hash.t;
}| Unchanged
Sourcetype add_error = | Validation_error of Tezos_base.TzPervasives.Error_monad.tztrace| Add_conflict of operation_conflict
Sourceval encoding : t Tezos_base.TzPervasives.Data_encoding.t Sourceval remove_operation : t -> Tezos_crypto.Hashed.Operation_hash.t -> t Sourceval init :
Tezos_protocol_environment__.Environment_context.Context.t ->
Tezos_crypto.Hashed.Chain_id.t ->
head_hash:Tezos_crypto.Hashed.Block_hash.t ->
head:Tezos_base.TzPervasives.Block_header.shell_header ->
cache:
[ `Force_load
| `Load
| `Lazy
| `Inherited of
Tezos_protocol_environment__.Environment_context.Context.block_cache
* Tezos_crypto.Hashed.Context_hash.t ] ->
(validation_info * t) Tezos_base.TzPervasives.tzresult Lwt.t