package octez-protocol-017-PtNairob-libs
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=c6df840ebbf115e454db949028c595bec558a59a66cade73b52a6d099d6fa4d4
sha512=d8aee903b9fe130d73176bc8ec38b78c9ff65317da3cb4f3415f09af0c625b4384e7498201fdb61aa39086a7d5d409d0ab3423f9bc3ab989a680cf444a79bc13
doc/octez-protocol-017-PtNairob-libs.baking/Tezos_baking_017_PtNairob/Operation_selection/index.html
Module Tezos_baking_017_PtNairob.Operation_selectionSource
type simulation_result = {validation_result : Tezos_protocol_environment.validation_result option;block_header_metadata : Tezos_protocol_017_PtNairob.Protocol.Apply_results.block_metadata option;operations : Tezos_protocol_017_PtNairob.Protocol.Alpha_context.packed_operation list list;operations_hash : Tezos_base.TzPervasives.Operation_list_list_hash.t;
}val filter_operations_with_simulation :
Baking_simulator.incremental ->
Baking_configuration.fees_config ->
hard_gas_limit_per_block:
Tezos_protocol_017_PtNairob.Protocol.Alpha_context.Gas.Arith.integral ->
Operation_pool.Prioritized.t ->
simulation_result Tezos_base.TzPervasives.tzresult Lwt.tfilter_operations_with_simulation incremental fees_config ~hard_gas_limit_per_block ops tries to validate prioritized operations (and apply them if incremental has been initialised with an application_state) and filter them regarding the quota of each validation pass. Manager operations are prioritized based on a weight computed from their fees/gas/bytes. filter_operations_with_simulation function returns a simulation_result, containing the validated operation, their resulting operations_hash, optional validation_result and block_header_metadata if the operations were applied.
val filter_operations_without_simulation :
Baking_configuration.fees_config ->
hard_gas_limit_per_block:
Tezos_protocol_017_PtNairob.Protocol.Alpha_context.Gas.Arith.integral ->
Operation_pool.Prioritized.t ->
Tezos_protocol_017_PtNairob.Protocol.Alpha_context.packed_operation list listfilter_operations_without_simulation fees_config ~hard_gas_limit_per_block ops is similar to filter_operations_with_simulation but does not validate (and apply) operations from ops and returns only the operations instead of a simulation_result.
Hypothesis: operations from ops have previously been validated.
val filter_consensus_operations_only :
Baking_simulator.incremental ->
Operation_pool.ordered_pool ->
(Baking_simulator.incremental * Operation_pool.ordered_pool)
Tezos_base.TzPervasives.tzresult
Lwt.tfilter_consensus_operations_only incremental ops is similar to filter_operations_with_simulation but only filters consensus operations from ops.