Tezos_raw_protocol_011_PtHangz2.ApplySourceThis module supports advancing the ledger state by applying operations.
Each operation application takes and returns an Alpha_context.t, representing the old and new state, respectively.
The Main module provides wrappers for the functionality in this module, satisfying the Protocol signature.
type Tezos_protocol_environment_011_PtHangz2.Error_monad.error += | Wrong_endorsement_predecessor of Tezos_protocol_environment_011_PtHangz2.Block_hash.t
* Tezos_protocol_environment_011_PtHangz2.Block_hash.ttype Tezos_protocol_environment_011_PtHangz2.Error_monad.error += | Duplicate_endorsement of Tezos_protocol_environment_011_PtHangz2.Signature.Public_key_hash.ttype Tezos_protocol_environment_011_PtHangz2.Error_monad.error += | Internal_operation_replay of Alpha_context.packed_internal_operationtype Tezos_protocol_environment_011_PtHangz2.Error_monad.error += | Inconsistent_double_endorsement_evidence of {delegate1 : Tezos_protocol_environment_011_PtHangz2.Signature.Public_key_hash.t;delegate2 : Tezos_protocol_environment_011_PtHangz2.Signature.Public_key_hash.t;}type Tezos_protocol_environment_011_PtHangz2.Error_monad.error += | Too_early_double_endorsement_evidence of {level : Alpha_context.Raw_level.t;current : Alpha_context.Raw_level.t;}type Tezos_protocol_environment_011_PtHangz2.Error_monad.error += | Outdated_double_endorsement_evidence of {level : Alpha_context.Raw_level.t;last : Alpha_context.Raw_level.t;}type Tezos_protocol_environment_011_PtHangz2.Error_monad.error += | Invalid_double_baking_evidence of {hash1 : Tezos_protocol_environment_011_PtHangz2.Block_hash.t;level1 : Tezos_protocol_environment_011_PtHangz2.Int32.t;hash2 : Tezos_protocol_environment_011_PtHangz2.Block_hash.t;level2 : Tezos_protocol_environment_011_PtHangz2.Int32.t;}type Tezos_protocol_environment_011_PtHangz2.Error_monad.error += | Inconsistent_double_baking_evidence of {delegate1 : Tezos_protocol_environment_011_PtHangz2.Signature.Public_key_hash.t;delegate2 : Tezos_protocol_environment_011_PtHangz2.Signature.Public_key_hash.t;}type Tezos_protocol_environment_011_PtHangz2.Error_monad.error += | Too_early_double_baking_evidence of {level : Alpha_context.Raw_level.t;current : Alpha_context.Raw_level.t;}type Tezos_protocol_environment_011_PtHangz2.Error_monad.error += | Outdated_double_baking_evidence of {level : Alpha_context.Raw_level.t;last : Alpha_context.Raw_level.t;}val begin_partial_construction :
Alpha_context.t ->
escape_vote:bool ->
(Alpha_context.t
* Apply_results.packed_successful_manager_operation_result list
* Alpha_context.Liquidity_baking.escape_ema)
Tezos_protocol_environment_011_PtHangz2.Error_monad.tzresult
Tezos_protocol_environment_011_PtHangz2.Lwt.tval begin_full_construction :
Alpha_context.t ->
Tezos_protocol_environment_011_PtHangz2.Time.t ->
Alpha_context.Block_header.contents ->
(Alpha_context.t
* Alpha_context.Block_header.contents
* Alpha_context.public_key
* Apply_results.packed_successful_manager_operation_result list
* Alpha_context.Liquidity_baking.escape_ema)
Tezos_protocol_environment_011_PtHangz2.Error_monad.tzresult
Tezos_protocol_environment_011_PtHangz2.Lwt.tval begin_application :
Alpha_context.t ->
Tezos_protocol_environment_011_PtHangz2.Chain_id.t ->
Alpha_context.Block_header.t ->
Tezos_protocol_environment_011_PtHangz2.Time.t ->
(Alpha_context.t
* Alpha_context.public_key
* Apply_results.packed_successful_manager_operation_result list
* Alpha_context.Liquidity_baking.escape_ema)
Tezos_protocol_environment_011_PtHangz2.Error_monad.tzresult
Tezos_protocol_environment_011_PtHangz2.Lwt.tval apply_operation :
Alpha_context.t ->
Tezos_protocol_environment_011_PtHangz2.Chain_id.t ->
Script_ir_translator.unparsing_mode ->
Tezos_protocol_environment_011_PtHangz2.Block_hash.t ->
Alpha_context.public_key_hash ->
Tezos_protocol_environment_011_PtHangz2.Operation_list_hash.elt ->
'a Alpha_context.operation ->
(Alpha_context.t * 'a Apply_results.operation_metadata,
Tezos_protocol_environment_011_PtHangz2.Error_monad.error
Tezos_protocol_environment_011_PtHangz2.Error_monad.trace)
Tezos_protocol_environment_011_PtHangz2.Pervasives.result
Tezos_protocol_environment_011_PtHangz2.Lwt.tval finalize_application :
Alpha_context.t ->
Alpha_context.Block_header.contents ->
Alpha_context.public_key_hash ->
Alpha_context.Receipt.balance_updates ->
Alpha_context.Liquidity_baking.escape_ema ->
Apply_results.packed_successful_manager_operation_result list ->
(Alpha_context.t * Apply_results.block_metadata,
Tezos_protocol_environment_011_PtHangz2.Error_monad.error
Tezos_protocol_environment_011_PtHangz2.Error_monad.trace)
Tezos_protocol_environment_011_PtHangz2.Pervasives.result
Tezos_protocol_environment_011_PtHangz2.Lwt.tval apply_manager_contents_list :
Alpha_context.t ->
Script_ir_translator.unparsing_mode ->
Alpha_context.public_key_hash ->
Tezos_protocol_environment_011_PtHangz2.Chain_id.t ->
'a Alpha_context.Kind.manager Alpha_context.contents_list ->
(Alpha_context.t
* 'a Alpha_context.Kind.manager Apply_results.contents_result_list)
Tezos_protocol_environment_011_PtHangz2.Lwt.tval apply_contents_list :
Alpha_context.t ->
Tezos_protocol_environment_011_PtHangz2.Chain_id.t ->
Script_ir_translator.unparsing_mode ->
Tezos_protocol_environment_011_PtHangz2.Block_hash.t ->
Alpha_context.public_key_hash ->
'kind Alpha_context.operation ->
'kind Alpha_context.contents_list ->
(Alpha_context.t * 'kind Apply_results.contents_result_list)
Tezos_protocol_environment_011_PtHangz2.Error_monad.tzresult
Tezos_protocol_environment_011_PtHangz2.Lwt.tval check_minimal_valid_time :
Alpha_context.t ->
priority:int ->
endorsing_power:int ->
(unit,
Tezos_protocol_environment_011_PtHangz2.Error_monad.error
Tezos_protocol_environment_011_PtHangz2.Error_monad.trace)
Tezos_protocol_environment_011_PtHangz2.Pervasives.resultval value_of_key :
Alpha_context.t ->
Tezos_protocol_environment_011_PtHangz2.Context.Cache.key ->
Tezos_protocol_environment_011_PtHangz2.Context.Cache.value
Tezos_protocol_environment_011_PtHangz2.Error_monad.tzresult
Tezos_protocol_environment_011_PtHangz2.Lwt.tvalue_of_key ctxt k builds a value identified by key k so that it can be put into the cache.
cache_layout describes how the caches needed by the protocol. The length of the list defines the number of caches while each element of this list corresponds to the size limit of each cache.