Trait RuntimeApiSubsystemClient
pub trait RuntimeApiSubsystemClient {
Show 41 methods
// Required methods
fn api_version_parachain_host<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<u32>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn validators<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<Public>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn validator_groups<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<(Vec<Vec<ValidatorIndex>>, GroupRotationInfo), ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn availability_cores<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<CoreState>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn persisted_validation_data<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
assumption: OccupiedCoreAssumption,
) -> Pin<Box<dyn Future<Output = Result<Option<PersistedValidationData>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn assumed_validation_data<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
expected_persisted_validation_data_hash: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<(PersistedValidationData, ValidationCodeHash)>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn check_validation_outputs<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
outputs: CandidateCommitments,
) -> Pin<Box<dyn Future<Output = Result<bool, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn session_index_for_child<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn validation_code<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
assumption: OccupiedCoreAssumption,
) -> Pin<Box<dyn Future<Output = Result<Option<ValidationCode>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn candidate_pending_availability<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<CommittedCandidateReceiptV2>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn candidate_events<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<CandidateEvent>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn dmq_contents<'life0, 'async_trait>(
&'life0 self,
at: H256,
recipient: Id,
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundDownwardMessage>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn inbound_hrmp_channels_contents<'life0, 'async_trait>(
&'life0 self,
at: H256,
recipient: Id,
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<Id, Vec<InboundHrmpMessage>>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn validation_code_by_hash<'life0, 'async_trait>(
&'life0 self,
at: H256,
hash: ValidationCodeHash,
) -> Pin<Box<dyn Future<Output = Result<Option<ValidationCode>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn on_chain_votes<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<ScrapedOnChainVotes>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn session_info<'life0, 'async_trait>(
&'life0 self,
at: H256,
index: u32,
) -> Pin<Box<dyn Future<Output = Result<Option<SessionInfo>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn submit_pvf_check_statement<'life0, 'async_trait>(
&'life0 self,
at: H256,
stmt: PvfCheckStatement,
signature: Signature,
) -> Pin<Box<dyn Future<Output = Result<(), ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn pvfs_require_precheck<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<ValidationCodeHash>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn validation_code_hash<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
assumption: OccupiedCoreAssumption,
) -> Pin<Box<dyn Future<Output = Result<Option<ValidationCodeHash>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn disputes<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<(u32, CandidateHash, DisputeState)>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn unapplied_slashes<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<(u32, CandidateHash, LegacyPendingSlashes)>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn key_ownership_proof<'life0, 'async_trait>(
&'life0 self,
at: H256,
validator_id: Public,
) -> Pin<Box<dyn Future<Output = Result<Option<OpaqueKeyOwnershipProof>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn submit_report_dispute_lost<'life0, 'async_trait>(
&'life0 self,
at: H256,
dispute_proof: DisputeProof,
key_ownership_proof: OpaqueKeyOwnershipProof,
) -> Pin<Box<dyn Future<Output = Result<Option<()>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn current_epoch<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Epoch, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn authorities<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<Public>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn session_executor_params<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
) -> Pin<Box<dyn Future<Output = Result<Option<ExecutorParams>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn minimum_backing_votes<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn async_backing_params<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<AsyncBackingParams, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn para_backing_state<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<BackingState>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn disabled_validators<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<ValidatorIndex>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn node_features<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<BitVec<u8>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn approval_voting_params<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
) -> Pin<Box<dyn Future<Output = Result<ApprovalVotingParams, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn claim_queue<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<CoreIndex, VecDeque<Id>>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn candidates_pending_availability<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Vec<CommittedCandidateReceiptV2>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn backing_constraints<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<Constraints>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn scheduling_lookahead<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn validation_code_bomb_limit<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn para_ids<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<Id>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn unapplied_slashes_v2<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<(u32, CandidateHash, PendingSlashes)>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn max_relay_parent_session_age<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn ancestor_relay_parent_info<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
relay_parent: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<RelayParentInfo<H256, u32>>, ApiError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
}Expand description
Exposes all runtime calls that are used by the runtime API subsystem.
Required Methods§
fn api_version_parachain_host<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<u32>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn api_version_parachain_host<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<u32>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Parachain host API version
fn validators<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<Public>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn validators<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<Public>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get the current validators.
fn validator_groups<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<(Vec<Vec<ValidatorIndex>>, GroupRotationInfo), ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn validator_groups<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<(Vec<Vec<ValidatorIndex>>, GroupRotationInfo), ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
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.
fn availability_cores<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<CoreState>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn availability_cores<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<CoreState>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
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.
fn persisted_validation_data<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
assumption: OccupiedCoreAssumption,
) -> Pin<Box<dyn Future<Output = Result<Option<PersistedValidationData>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn persisted_validation_data<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
assumption: OccupiedCoreAssumption,
) -> Pin<Box<dyn Future<Output = Result<Option<PersistedValidationData>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Yields the persisted validation data for the given ParaId along with an assumption that
should be used if the para currently occupies a core.
Returns None if either the para is not registered or the assumption is Freed
and the para already occupies a core.
fn assumed_validation_data<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
expected_persisted_validation_data_hash: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<(PersistedValidationData, ValidationCodeHash)>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn assumed_validation_data<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
expected_persisted_validation_data_hash: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<(PersistedValidationData, ValidationCodeHash)>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns the persisted validation data for the given ParaId along with the corresponding
validation code hash. Instead of accepting assumption about the para, matches the validation
data hash against an expected one and yields None if they’re not equal.
fn check_validation_outputs<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
outputs: CandidateCommitments,
) -> Pin<Box<dyn Future<Output = Result<bool, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn check_validation_outputs<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
outputs: CandidateCommitments,
) -> Pin<Box<dyn Future<Output = Result<bool, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Checks if the given validation outputs pass the acceptance criteria.
fn session_index_for_child<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn session_index_for_child<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns the session index expected at a child of the block.
This can be used to instantiate a SigningContext.
fn validation_code<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
assumption: OccupiedCoreAssumption,
) -> Pin<Box<dyn Future<Output = Result<Option<ValidationCode>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn validation_code<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
assumption: OccupiedCoreAssumption,
) -> Pin<Box<dyn Future<Output = Result<Option<ValidationCode>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Fetch the validation code used by a para, making the given OccupiedCoreAssumption.
Returns None if either the para is not registered or the assumption is Freed
and the para already occupies a core.
fn candidate_pending_availability<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<CommittedCandidateReceiptV2>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn candidate_pending_availability<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<CommittedCandidateReceiptV2>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get the receipt of a candidate pending availability. This returns Some for any paras
assigned to occupied cores in availability_cores and None otherwise.
fn candidate_events<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<CandidateEvent>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn candidate_events<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<CandidateEvent>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get a vector of events concerning candidates that occurred within a block.
fn dmq_contents<'life0, 'async_trait>(
&'life0 self,
at: H256,
recipient: Id,
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundDownwardMessage>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn dmq_contents<'life0, 'async_trait>(
&'life0 self,
at: H256,
recipient: Id,
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundDownwardMessage>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get all the pending inbound messages in the downward message queue for a para.
fn inbound_hrmp_channels_contents<'life0, 'async_trait>(
&'life0 self,
at: H256,
recipient: Id,
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<Id, Vec<InboundHrmpMessage>>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn inbound_hrmp_channels_contents<'life0, 'async_trait>(
&'life0 self,
at: H256,
recipient: Id,
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<Id, Vec<InboundHrmpMessage>>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get the contents of all channels addressed to the given recipient. Channels that have no messages in them are also included.
fn validation_code_by_hash<'life0, 'async_trait>(
&'life0 self,
at: H256,
hash: ValidationCodeHash,
) -> Pin<Box<dyn Future<Output = Result<Option<ValidationCode>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn validation_code_by_hash<'life0, 'async_trait>(
&'life0 self,
at: H256,
hash: ValidationCodeHash,
) -> Pin<Box<dyn Future<Output = Result<Option<ValidationCode>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get the validation code from its hash.
fn on_chain_votes<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<ScrapedOnChainVotes>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn on_chain_votes<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<ScrapedOnChainVotes>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Scrape dispute relevant from on-chain, backing votes and resolved disputes.
fn session_info<'life0, 'async_trait>(
&'life0 self,
at: H256,
index: u32,
) -> Pin<Box<dyn Future<Output = Result<Option<SessionInfo>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn session_info<'life0, 'async_trait>(
&'life0 self,
at: H256,
index: u32,
) -> Pin<Box<dyn Future<Output = Result<Option<SessionInfo>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
*** Added in v2 **** Get the session info for the given session, if stored.
NOTE: This function is only available since parachain host version 2.
fn submit_pvf_check_statement<'life0, 'async_trait>(
&'life0 self,
at: H256,
stmt: PvfCheckStatement,
signature: Signature,
) -> Pin<Box<dyn Future<Output = Result<(), ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn submit_pvf_check_statement<'life0, 'async_trait>(
&'life0 self,
at: H256,
stmt: PvfCheckStatement,
signature: Signature,
) -> Pin<Box<dyn Future<Output = Result<(), ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Submits a PVF pre-checking statement into the transaction pool.
NOTE: This function is only available since parachain host version 2.
fn pvfs_require_precheck<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<ValidationCodeHash>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn pvfs_require_precheck<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<ValidationCodeHash>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns code hashes of PVFs that require pre-checking by validators in the active set.
NOTE: This function is only available since parachain host version 2.
fn validation_code_hash<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
assumption: OccupiedCoreAssumption,
) -> Pin<Box<dyn Future<Output = Result<Option<ValidationCodeHash>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn validation_code_hash<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
assumption: OccupiedCoreAssumption,
) -> Pin<Box<dyn Future<Output = Result<Option<ValidationCodeHash>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Fetch the hash of the validation code used by a para, making the given
OccupiedCoreAssumption.
NOTE: This function is only available since parachain host version 2.
fn disputes<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<(u32, CandidateHash, DisputeState)>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn disputes<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<(u32, CandidateHash, DisputeState)>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
*** Added in v3 **** Returns all onchain disputes.
fn unapplied_slashes<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<(u32, CandidateHash, LegacyPendingSlashes)>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn unapplied_slashes<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<(u32, CandidateHash, LegacyPendingSlashes)>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns a list of validators that lost a past session dispute and need to be slashed.
fn key_ownership_proof<'life0, 'async_trait>(
&'life0 self,
at: H256,
validator_id: Public,
) -> Pin<Box<dyn Future<Output = Result<Option<OpaqueKeyOwnershipProof>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn key_ownership_proof<'life0, 'async_trait>(
&'life0 self,
at: H256,
validator_id: Public,
) -> Pin<Box<dyn Future<Output = Result<Option<OpaqueKeyOwnershipProof>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns a merkle proof of a validator session key in a past session.
fn submit_report_dispute_lost<'life0, 'async_trait>(
&'life0 self,
at: H256,
dispute_proof: DisputeProof,
key_ownership_proof: OpaqueKeyOwnershipProof,
) -> Pin<Box<dyn Future<Output = Result<Option<()>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn submit_report_dispute_lost<'life0, 'async_trait>(
&'life0 self,
at: H256,
dispute_proof: DisputeProof,
key_ownership_proof: OpaqueKeyOwnershipProof,
) -> Pin<Box<dyn Future<Output = Result<Option<()>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Submits an unsigned extrinsic to slash validators who lost a dispute about a candidate of a past session.
fn current_epoch<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Epoch, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn current_epoch<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Epoch, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns information regarding the current epoch.
Retrieve authority identifiers of the current and next authority set.
fn session_executor_params<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
) -> Pin<Box<dyn Future<Output = Result<Option<ExecutorParams>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn session_executor_params<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
) -> Pin<Box<dyn Future<Output = Result<Option<ExecutorParams>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get the execution environment parameter set by parent hash, if stored
fn minimum_backing_votes<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn minimum_backing_votes<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get the minimum number of backing votes.
fn async_backing_params<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<AsyncBackingParams, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn async_backing_params<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<AsyncBackingParams, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns candidate’s acceptance limitations for asynchronous backing for a relay parent.
fn para_backing_state<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<BackingState>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn para_backing_state<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<BackingState>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns the state of parachain backing for a given para. This is a staging method! Do not use on production runtimes!
fn disabled_validators<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<ValidatorIndex>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn disabled_validators<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<ValidatorIndex>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Gets the disabled validators at a specific block height
fn node_features<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<BitVec<u8>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn node_features<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<BitVec<u8>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get the node features.
fn approval_voting_params<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
) -> Pin<Box<dyn Future<Output = Result<ApprovalVotingParams, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn approval_voting_params<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
) -> Pin<Box<dyn Future<Output = Result<ApprovalVotingParams, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Approval voting configuration parameters
fn claim_queue<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<CoreIndex, VecDeque<Id>>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn claim_queue<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<CoreIndex, VecDeque<Id>>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Fetch the ClaimQueue from scheduler pallet
fn candidates_pending_availability<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Vec<CommittedCandidateReceiptV2>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn candidates_pending_availability<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Vec<CommittedCandidateReceiptV2>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get the receipts of all candidates pending availability for a ParaId.
fn backing_constraints<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<Constraints>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn backing_constraints<'life0, 'async_trait>(
&'life0 self,
at: H256,
para_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<Constraints>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get the constraints on the actions that can be taken by a new parachain block.
fn scheduling_lookahead<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn scheduling_lookahead<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Fetch the scheduling lookahead value
fn validation_code_bomb_limit<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn validation_code_bomb_limit<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Fetch the maximum uncompressed code size.
fn para_ids<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<Id>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn para_ids<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<Id>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Fetch the list of all parachain IDs registered in the relay chain.
fn unapplied_slashes_v2<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<(u32, CandidateHash, PendingSlashes)>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn unapplied_slashes_v2<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<Vec<(u32, CandidateHash, PendingSlashes)>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns a list of validators that lost a past session dispute and need to be slashed (v2).
fn max_relay_parent_session_age<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn max_relay_parent_session_age<'life0, 'async_trait>(
&'life0 self,
at: H256,
) -> Pin<Box<dyn Future<Output = Result<u32, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Fetch the maximum relay parent session age allowed for parachain blocks.
fn ancestor_relay_parent_info<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
relay_parent: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<RelayParentInfo<H256, u32>>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn ancestor_relay_parent_info<'life0, 'async_trait>(
&'life0 self,
at: H256,
session_index: u32,
relay_parent: H256,
) -> Pin<Box<dyn Future<Output = Result<Option<RelayParentInfo<H256, u32>>, ApiError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Look up relay parent info for an ancestor block. A block is not in its
own AllowedRelayParents, so querying a block about itself returns None.