Kagome
Polkadot Runtime Engine in C++17
|
#include <parachain_host.hpp>
Public Member Functions | |
ParachainHostImpl (std::shared_ptr< Executor > executor) | |
outcome::result< DutyRoster > | duty_roster (const primitives::BlockHash &block) override |
Calls the ParachainHost_duty_roster function from wasm code. More... | |
outcome::result< std::vector< ParachainId > > | active_parachains (const primitives::BlockHash &block) override |
Calls the ParachainHost_active_parachains function from wasm code. More... | |
outcome::result< std::optional< Buffer > > | parachain_head (const primitives::BlockHash &block, ParachainId id) override |
Calls the ParachainHost_parachain_head function from wasm code. More... | |
outcome::result< std::optional< kagome::common::Buffer > > | parachain_code (const primitives::BlockHash &block, ParachainId id) override |
Calls the ParachainHost_parachain_code function from wasm code. More... | |
outcome::result< std::vector< ValidatorId > > | validators (const primitives::BlockHash &block) override |
reports validators list for given block_id More... | |
outcome::result< std::vector< ValidatorGroup > > | validator_groups (const primitives::BlockHash &block) override |
Returns the validator groups and rotation info localized based on the hypothetical child of a block whose state this is invoked on. Note that now in the GroupRotationInfo should be the successor of the number of the block. More... | |
outcome::result< std::vector< CoreState > > | availability_cores (const primitives::BlockHash &block) override |
Yields information on all availability cores as relevant to the child block. Cores are either free or occupied. Free cores can have paras assigned to them. More... | |
outcome::result< std::optional< PersistedValidationData > > | persisted_validation_data (const primitives::BlockHash &block, ParachainId id, OccupiedCoreAssumption assumption) override |
Yields the persisted validation data for the given ParaId along with an assumption that should be used if the para currently occupies a core. More... | |
outcome::result< bool > | check_validation_outputs (const primitives::BlockHash &block, ParachainId id, CandidateCommitments outputs) override |
Checks if the given validation outputs pass the acceptance criteria. More... | |
outcome::result< SessionIndex > | session_index_for_child (const primitives::BlockHash &block) override |
Returns the session index expected at a child of the block. This can be used to instantiate a SigningContext . More... | |
outcome::result< std::optional< ValidationCode > > | validation_code (const primitives::BlockHash &block, ParachainId id, OccupiedCoreAssumption assumption) override |
Fetch the validation code used by a para, making the given OccupiedCoreAssumption . More... | |
outcome::result< std::optional< ValidationCode > > | validation_code_by_hash (const primitives::BlockHash &block, ValidationCodeHash hash) override |
Get the validation code (runtime) from its hash. More... | |
outcome::result< std::optional< CommittedCandidateReceipt > > | candidate_pending_availability (const primitives::BlockHash &block, ParachainId id) override |
Get the receipt of a candidate pending availability. More... | |
outcome::result< std::vector< CandidateEvent > > | candidate_events (const primitives::BlockHash &block) override |
Get a vector of events concerning candidates that occurred within a block. More... | |
outcome::result< std::optional< SessionInfo > > | session_info (const primitives::BlockHash &block, SessionIndex index) override |
Get the session info for the given session, if stored. More... | |
outcome::result< std::vector< InboundDownwardMessage > > | dmq_contents (const primitives::BlockHash &block, ParachainId id) override |
Get all the pending inbound messages in the downward message queue for a para. More... | |
outcome::result< std::map< ParachainId, std::vector< InboundHrmpMessage > > > | inbound_hrmp_channels_contents (const primitives::BlockHash &block, ParachainId id) override |
Get the contents of all channels addressed to the given recipient. Channels that have no messages in them are also included. More... | |
Public Member Functions inherited from kagome::runtime::ParachainHost | |
virtual | ~ParachainHost ()=default |
Private Attributes | |
std::shared_ptr< Executor > | executor_ |
Definition at line 16 of file parachain_host.hpp.
|
explicit |
Definition at line 14 of file parachain_host.cpp.
|
overridevirtual |
Calls the ParachainHost_active_parachains function from wasm code.
Implements kagome::runtime::ParachainHost.
Definition at line 25 of file parachain_host.cpp.
|
overridevirtual |
Yields information on all availability cores as relevant to the child block. Cores are either free or occupied. Free cores can have paras assigned to them.
Implements kagome::runtime::ParachainHost.
Definition at line 56 of file parachain_host.cpp.
|
overridevirtual |
Get a vector of events concerning candidates that occurred within a block.
Implements kagome::runtime::ParachainHost.
Definition at line 108 of file parachain_host.cpp.
|
overridevirtual |
Get the receipt of a candidate pending availability.
id | parachain id |
availability_cores
and nullopt otherwise. Implements kagome::runtime::ParachainHost.
Definition at line 101 of file parachain_host.cpp.
|
overridevirtual |
Checks if the given validation outputs pass the acceptance criteria.
id | parachain id |
outputs | candidate commitments |
Implements kagome::runtime::ParachainHost.
Definition at line 71 of file parachain_host.cpp.
|
overridevirtual |
Get all the pending inbound messages in the downward message queue for a para.
id | parachain id |
Implements kagome::runtime::ParachainHost.
Definition at line 120 of file parachain_host.cpp.
|
overridevirtual |
Calls the ParachainHost_duty_roster function from wasm code.
Implements kagome::runtime::ParachainHost.
Definition at line 19 of file parachain_host.cpp.
|
overridevirtual |
Get the contents of all channels addressed to the given recipient. Channels that have no messages in them are also included.
Implements kagome::runtime::ParachainHost.
Definition at line 127 of file parachain_host.cpp.
|
overridevirtual |
Calls the ParachainHost_parachain_code function from wasm code.
id | parachain id |
Implements kagome::runtime::ParachainHost.
Definition at line 38 of file parachain_host.cpp.
|
overridevirtual |
Calls the ParachainHost_parachain_head function from wasm code.
id | parachain id |
Implements kagome::runtime::ParachainHost.
Definition at line 31 of file parachain_host.cpp.
|
overridevirtual |
Yields the persisted validation data for the given ParaId
along with an assumption that should be used if the para currently occupies a core.
id | parachain id |
assumption | occupied core assumption |
Freed
(not Included
) and the para already occupies a core. Implements kagome::runtime::ParachainHost.
Definition at line 63 of file parachain_host.cpp.
|
overridevirtual |
Returns the session index expected at a child of the block. This can be used to instantiate a SigningContext
.
Implements kagome::runtime::ParachainHost.
Definition at line 79 of file parachain_host.cpp.
|
overridevirtual |
Get the session info for the given session, if stored.
index | session index |
Implements kagome::runtime::ParachainHost.
Definition at line 113 of file parachain_host.cpp.
|
overridevirtual |
Fetch the validation code used by a para, making the given OccupiedCoreAssumption
.
id | parachain id |
assumption | occupied core assumption |
Freed
(TimedOut or Unused) and the para already occupies a core. Implements kagome::runtime::ParachainHost.
Definition at line 86 of file parachain_host.cpp.
|
overridevirtual |
Get the validation code (runtime) from its hash.
hash | validation code hash |
Implements kagome::runtime::ParachainHost.
Definition at line 94 of file parachain_host.cpp.
|
overridevirtual |
Returns the validator groups and rotation info localized based on the hypothetical child of a block whose state this is invoked on. Note that now
in the GroupRotationInfo
should be the successor of the number of the block.
Implements kagome::runtime::ParachainHost.
Definition at line 51 of file parachain_host.cpp.
|
overridevirtual |
reports validators list for given block_id
Implements kagome::runtime::ParachainHost.
Definition at line 44 of file parachain_host.cpp.
|
private |
Definition at line 80 of file parachain_host.hpp.