pub struct RuntimeApiImpl<Block: BlockT, C: CallApiAt<Block> + 'static> { /* private fields */ }
Expand description

Implements all runtime apis for the client side.

Trait Implementations§

source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> AccountNonceApi<__SrApiBlock__, <<MultiSignature as Verify>::Signer as IdentifyAccount>::AccountId, u32> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, AccountId: UnwindSafe + RefUnwindSafe, Nonce: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn account_nonce( &self, __runtime_api_at_param__: <Block as Block>::Hash, account: AccountId ) -> Result<Nonce, ApiError>

Get current account nonce of given AccountId.
source§

impl<Block: BlockT, C: CallApiAt<Block>> ApiExt<Block> for RuntimeApiImpl<Block, C>

§

type StateBackend = <C as CallApiAt<Block>>::StateBackend

The state backend that is used to store the block states.
source§

fn execute_in_transaction<F: FnOnce(&Self) -> TransactionOutcome<R>, R>( &self, call: F ) -> Rwhere Self: Sized,

Execute the given closure inside a new transaction. Read more
source§

fn has_api<A: RuntimeApiInfo + ?Sized>( &self, at: <Block as BlockT>::Hash ) -> Result<bool, ApiError>where Self: Sized,

Checks if the given api is implemented and versions match.
source§

fn has_api_with<A: RuntimeApiInfo + ?Sized, P: Fn(u32) -> bool>( &self, at: <Block as BlockT>::Hash, pred: P ) -> Result<bool, ApiError>where Self: Sized,

Check if the given api is implemented and the version passes a predicate.
source§

fn api_version<A: RuntimeApiInfo + ?Sized>( &self, at: <Block as BlockT>::Hash ) -> Result<Option<u32>, ApiError>where Self: Sized,

Returns the version of the given api.
source§

fn record_proof(&mut self)

Start recording all accessed trie nodes for generating proofs.
source§

fn proof_recorder(&self) -> Option<ProofRecorder<Block>>

Returns the current active proof recorder.
source§

fn extract_proof(&mut self) -> Option<StorageProof>

Extract the recorded proof. Read more
source§

fn into_storage_changes( &self, backend: &Self::StateBackend, parent_hash: Block::Hash ) -> Result<StorageChanges<C::StateBackend, Block>, String>where Self: Sized,

Convert the api object into the storage changes that were done while executing runtime api functions. Read more
source§

fn set_call_context(&mut self, call_context: CallContext)

Set the [CallContext] to be used by the runtime api calls done by this instance.
source§

fn register_extension<E: Extension>(&mut self, extension: E)

Register an [Extension] that will be accessible while executing a runtime api call.
source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> AuraApi<__SrApiBlock__, Public> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, SlotDuration: UnwindSafe + RefUnwindSafe, Vec<AuthorityId>: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn slot_duration( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<SlotDuration, ApiError>

Returns the slot duration for Aura. Read more
§

fn authorities( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<Vec<AuthorityId, Global>, ApiError>

Return the current set of authorities.
source§

impl<__SrApiBlock__, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> BlockBuilder<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, <__SrApiBlock__ as BlockT>::Extrinsic: UnwindSafe + RefUnwindSafe, ApplyExtrinsicResult: UnwindSafe + RefUnwindSafe, <__SrApiBlock__ as BlockT>::Header: UnwindSafe + RefUnwindSafe, InherentData: UnwindSafe + RefUnwindSafe, Vec<<__SrApiBlock__ as BlockT>::Extrinsic>: UnwindSafe + RefUnwindSafe, __SrApiBlock__: UnwindSafe + RefUnwindSafe + BlockT, CheckInherentsResult: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn apply_extrinsic( &self, __runtime_api_at_param__: <Block as Block>::Hash, extrinsic: <Block as Block>::Extrinsic ) -> Result<Result<Result<(), DispatchError>, TransactionValidityError>, ApiError>

Apply the given extrinsic. Read more
§

fn apply_extrinsic_before_version_6( &self, __runtime_api_at_param__: <Block as Block>::Hash, extrinsic: <Block as Block>::Extrinsic ) -> Result<Result<Result<(), DispatchError>, TransactionValidityError>, ApiError>

👎Deprecated
§

fn finalize_block( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<<Block as Block>::Header, ApiError>

Finish the current block.
§

fn inherent_extrinsics( &self, __runtime_api_at_param__: <Block as Block>::Hash, inherent: InherentData ) -> Result<Vec<<Block as Block>::Extrinsic, Global>, ApiError>

Generate inherent extrinsics. The inherent data will vary from chain to chain.
§

fn check_inherents( &self, __runtime_api_at_param__: <Block as Block>::Hash, block: Block, data: InherentData ) -> Result<CheckInherentsResult, ApiError>

Check that the inherents are valid. The inherent data will vary from chain to chain.
source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> ConvertTransactionRuntimeApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, Transaction: UnwindSafe + RefUnwindSafe, <__SrApiBlock__ as BlockT>::Extrinsic: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

source§

fn convert_transaction( &self, __runtime_api_at_param__: <Block as Block>::Hash, transaction: TransactionV2 ) -> Result<<Block as Block>::Extrinsic, ApiError>

source§

fn convert_transaction_before_version_2( &self, __runtime_api_at_param__: <Block as Block>::Hash, transaction: LegacyTransaction ) -> Result<<Block as Block>::Extrinsic, ApiError>

👎Deprecated
source§

impl<__SrApiBlock__, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> Core<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, RuntimeVersion: UnwindSafe + RefUnwindSafe, __SrApiBlock__: UnwindSafe + RefUnwindSafe + BlockT, <__SrApiBlock__ as BlockT>::Header: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn version( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<RuntimeVersion, ApiError>

Returns the version of the runtime.
§

fn execute_block( &self, __runtime_api_at_param__: <Block as Block>::Hash, block: Block ) -> Result<(), ApiError>

Execute the given block.
§

fn initialize_block( &self, __runtime_api_at_param__: <Block as Block>::Hash, header: &<Block as Block>::Header ) -> Result<(), ApiError>

Initialize a block with the given header.
source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> EthereumRuntimeRPCApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, u64: UnwindSafe + RefUnwindSafe, H160: UnwindSafe + RefUnwindSafe, Account: UnwindSafe + RefUnwindSafe, U256: UnwindSafe + RefUnwindSafe, Vec<u8>: UnwindSafe + RefUnwindSafe, H256: UnwindSafe + RefUnwindSafe, Option<U256>: UnwindSafe + RefUnwindSafe, bool: UnwindSafe + RefUnwindSafe, Option<Vec<(H160, Vec<H256>)>>: UnwindSafe + RefUnwindSafe, Result<CallInfo, DispatchError>: UnwindSafe + RefUnwindSafe, Result<CreateInfo, DispatchError>: UnwindSafe + RefUnwindSafe, Option<Vec<TransactionStatus>>: UnwindSafe + RefUnwindSafe, Option<Block>: UnwindSafe + RefUnwindSafe, Option<Vec<Receipt>>: UnwindSafe + RefUnwindSafe, (Option<Block>, Option<Vec<Receipt>>, Option<Vec<TransactionStatus>>): UnwindSafe + RefUnwindSafe, Vec<<__SrApiBlock__ as BlockT>::Extrinsic>: UnwindSafe + RefUnwindSafe, Vec<Transaction>: UnwindSafe + RefUnwindSafe, Option<Permill>: UnwindSafe + RefUnwindSafe, (Option<Block>, Option<Vec<TransactionStatus>>): UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

source§

fn chain_id( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<u64, ApiError>

Returns runtime defined pallet_evm::ChainId.
source§

fn account_basic( &self, __runtime_api_at_param__: <Block as Block>::Hash, address: H160 ) -> Result<Basic, ApiError>

Returns pallet_evm::Accounts by address.
source§

fn gas_price( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<U256, ApiError>

Returns FixedGasPrice::min_gas_price
source§

fn account_code_at( &self, __runtime_api_at_param__: <Block as Block>::Hash, address: H160 ) -> Result<Vec<u8, Global>, ApiError>

For a given account address, returns pallet_evm::AccountCodes.
source§

fn author( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<H160, ApiError>

Returns the converted FindAuthor::find_author authority id.
source§

fn storage_at( &self, __runtime_api_at_param__: <Block as Block>::Hash, address: H160, index: U256 ) -> Result<H256, ApiError>

For a given account address and index, returns pallet_evm::AccountStorages.
source§

fn call_before_version_2( &self, __runtime_api_at_param__: <Block as Block>::Hash, from: H160, to: H160, data: Vec<u8, Global>, value: U256, gas_limit: U256, gas_price: Option<U256>, nonce: Option<U256>, estimate: bool ) -> Result<Result<ExecutionInfo<Vec<u8, Global>>, DispatchError>, ApiError>

👎Deprecated
Returns a frame_ethereum::call response. If estimate is true,
source§

fn call_before_version_4( &self, __runtime_api_at_param__: <Block as Block>::Hash, from: H160, to: H160, data: Vec<u8, Global>, value: U256, gas_limit: U256, max_fee_per_gas: Option<U256>, max_priority_fee_per_gas: Option<U256>, nonce: Option<U256>, estimate: bool ) -> Result<Result<ExecutionInfo<Vec<u8, Global>>, DispatchError>, ApiError>

👎Deprecated
source§

fn call_before_version_5( &self, __runtime_api_at_param__: <Block as Block>::Hash, from: H160, to: H160, data: Vec<u8, Global>, value: U256, gas_limit: U256, max_fee_per_gas: Option<U256>, max_priority_fee_per_gas: Option<U256>, nonce: Option<U256>, estimate: bool, access_list: Option<Vec<(H160, Vec<H256, Global>), Global>> ) -> Result<Result<ExecutionInfo<Vec<u8, Global>>, DispatchError>, ApiError>

👎Deprecated
source§

fn call( &self, __runtime_api_at_param__: <Block as Block>::Hash, from: H160, to: H160, data: Vec<u8, Global>, value: U256, gas_limit: U256, max_fee_per_gas: Option<U256>, max_priority_fee_per_gas: Option<U256>, nonce: Option<U256>, estimate: bool, access_list: Option<Vec<(H160, Vec<H256, Global>), Global>> ) -> Result<Result<ExecutionInfoV2<Vec<u8, Global>>, DispatchError>, ApiError>

source§

fn create_before_version_2( &self, __runtime_api_at_param__: <Block as Block>::Hash, from: H160, data: Vec<u8, Global>, value: U256, gas_limit: U256, gas_price: Option<U256>, nonce: Option<U256>, estimate: bool ) -> Result<Result<ExecutionInfo<H160>, DispatchError>, ApiError>

👎Deprecated
Returns a frame_ethereum::create response.
source§

fn create_before_version_4( &self, __runtime_api_at_param__: <Block as Block>::Hash, from: H160, data: Vec<u8, Global>, value: U256, gas_limit: U256, max_fee_per_gas: Option<U256>, max_priority_fee_per_gas: Option<U256>, nonce: Option<U256>, estimate: bool ) -> Result<Result<ExecutionInfo<H160>, DispatchError>, ApiError>

👎Deprecated
source§

fn create_before_version_5( &self, __runtime_api_at_param__: <Block as Block>::Hash, from: H160, data: Vec<u8, Global>, value: U256, gas_limit: U256, max_fee_per_gas: Option<U256>, max_priority_fee_per_gas: Option<U256>, nonce: Option<U256>, estimate: bool, access_list: Option<Vec<(H160, Vec<H256, Global>), Global>> ) -> Result<Result<ExecutionInfo<H160>, DispatchError>, ApiError>

👎Deprecated
source§

fn create( &self, __runtime_api_at_param__: <Block as Block>::Hash, from: H160, data: Vec<u8, Global>, value: U256, gas_limit: U256, max_fee_per_gas: Option<U256>, max_priority_fee_per_gas: Option<U256>, nonce: Option<U256>, estimate: bool, access_list: Option<Vec<(H160, Vec<H256, Global>), Global>> ) -> Result<Result<ExecutionInfoV2<H160>, DispatchError>, ApiError>

source§

fn current_block_before_version_2( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<Option<Block<LegacyTransaction>>, ApiError>

👎Deprecated
Return the current block. Legacy.
source§

fn current_block( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<Option<Block<TransactionV2>>, ApiError>

Return the current block.
source§

fn current_receipts_before_version_4( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<Option<Vec<FrontierReceiptData, Global>>, ApiError>

👎Deprecated
Return the current receipt.
source§

fn current_receipts( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<Option<Vec<ReceiptV3, Global>>, ApiError>

Return the current receipt.
source§

fn current_transaction_statuses( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<Option<Vec<TransactionStatus, Global>>, ApiError>

Return the current transaction status.
source§

fn current_all_before_version_2( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<(Option<Block<LegacyTransaction>>, Option<Vec<FrontierReceiptData, Global>>, Option<Vec<TransactionStatus, Global>>), ApiError>

👎Deprecated
Return all the current data for a block in a single runtime call. Legacy.
source§

fn current_all_before_version_4( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<(Option<Block<TransactionV2>>, Option<Vec<FrontierReceiptData, Global>>, Option<Vec<TransactionStatus, Global>>), ApiError>

👎Deprecated
Return all the current data for a block in a single runtime call.
source§

fn current_all( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<(Option<Block<TransactionV2>>, Option<Vec<ReceiptV3, Global>>, Option<Vec<TransactionStatus, Global>>), ApiError>

source§

fn extrinsic_filter_before_version_2( &self, __runtime_api_at_param__: <Block as Block>::Hash, xts: Vec<<Block as Block>::Extrinsic, Global> ) -> Result<Vec<LegacyTransaction, Global>, ApiError>

👎Deprecated
Receives a Vec<OpaqueExtrinsic> and filters all the ethereum transactions. Legacy.
source§

fn extrinsic_filter( &self, __runtime_api_at_param__: <Block as Block>::Hash, xts: Vec<<Block as Block>::Extrinsic, Global> ) -> Result<Vec<TransactionV2, Global>, ApiError>

Receives a Vec<OpaqueExtrinsic> and filters all the ethereum transactions.
source§

fn elasticity( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<Option<Permill>, ApiError>

Return the elasticity multiplier.
source§

fn gas_limit_multiplier_support( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<(), ApiError>

Used to determine if gas limit multiplier for non-transactional calls (eth_call/estimateGas) is supported.
source§

fn pending_block( &self, __runtime_api_at_param__: <Block as Block>::Hash, xts: Vec<<Block as Block>::Extrinsic, Global> ) -> Result<(Option<Block<TransactionV2>>, Option<Vec<TransactionStatus, Global>>), ApiError>

Return the pending block.
source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> GrandpaApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, AuthorityList: UnwindSafe + RefUnwindSafe, SetId: UnwindSafe + RefUnwindSafe, EquivocationProof<<__SrApiBlock__ as BlockT>::Hash, NumberFor<__SrApiBlock__>>: UnwindSafe + RefUnwindSafe, OpaqueKeyOwnershipProof: UnwindSafe + RefUnwindSafe, Option<()>: UnwindSafe + RefUnwindSafe, AuthorityId: UnwindSafe + RefUnwindSafe, Option<OpaqueKeyOwnershipProof>: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn grandpa_authorities( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<Vec<(Public, u64), Global>, ApiError>

Get the current GRANDPA authorities and weights. This should not change except for when changes are scheduled and the corresponding delay has passed. Read more
§

fn submit_report_equivocation_unsigned_extrinsic( &self, __runtime_api_at_param__: <Block as Block>::Hash, equivocation_proof: EquivocationProof<<Block as Block>::Hash, <<Block as Block>::Header as Header>::Number>, key_owner_proof: OpaqueKeyOwnershipProof ) -> Result<Option<()>, ApiError>

Submits an unsigned extrinsic to report an equivocation. The caller must provide the equivocation proof and a key ownership proof (should be obtained using generate_key_ownership_proof). The extrinsic will be unsigned and should only be accepted for local authorship (not to be broadcast to the network). This method returns None when creation of the extrinsic fails, e.g. if equivocation reporting is disabled for the given runtime (i.e. this method is hardcoded to return None). Only useful in an offchain context.
§

fn generate_key_ownership_proof( &self, __runtime_api_at_param__: <Block as Block>::Hash, set_id: u64, authority_id: Public ) -> Result<Option<OpaqueKeyOwnershipProof>, ApiError>

Generates a proof of key ownership for the given authority in the given set. An example usage of this module is coupled with the session historical module to prove that a given authority key is tied to a given staking identity during a specific session. Proofs of key ownership are necessary for submitting equivocation reports. NOTE: even though the API takes a set_id as parameter the current implementations ignore this parameter and instead rely on this method being called at the correct block height, i.e. any point at which the given set id is live on-chain. Future implementations will instead use indexed data through an offchain worker, not requiring older states to be available.
§

fn current_set_id( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<u64, ApiError>

Get current GRANDPA authority set id.
source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> Metadata<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, OpaqueMetadata: UnwindSafe + RefUnwindSafe, u32: UnwindSafe + RefUnwindSafe, Option<OpaqueMetadata>: UnwindSafe + RefUnwindSafe, Vec<u32>: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn metadata( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<OpaqueMetadata, ApiError>

Returns the metadata of a runtime.
§

fn metadata_at_version( &self, __runtime_api_at_param__: <Block as Block>::Hash, version: u32 ) -> Result<Option<OpaqueMetadata>, ApiError>

Returns the metadata at a given version. Read more
§

fn metadata_versions( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<Vec<u32, Global>, ApiError>

Returns the supported metadata versions. Read more
source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> OffchainWorkerApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, <__SrApiBlock__ as BlockT>::Header: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn offchain_worker_before_version_2( &self, __runtime_api_at_param__: <Block as Block>::Hash, number: <<Block as Block>::Header as Header>::Number ) -> Result<(), ApiError>

👎Deprecated
Starts the off-chain task for given block number.
§

fn offchain_worker( &self, __runtime_api_at_param__: <Block as Block>::Hash, header: &<Block as Block>::Header ) -> Result<(), ApiError>

Starts the off-chain task for given block header.
source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> PortalRuntimeApi<__SrApiBlock__, <<MultiSignature as Verify>::Signer as IdentifyAccount>::AccountId, u128, H256> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, ChainId: UnwindSafe + RefUnwindSafe, Option<u128>: UnwindSafe + RefUnwindSafe, AccountId: UnwindSafe + RefUnwindSafe, Vec<(Hash, Vec<SideEffect<AccountId, Balance>>, Vec<Hash>)>: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn fetch_head_height( &self, __runtime_api_at_param__: <Block as Block>::Hash, chain_id: [u8; 4] ) -> Result<Option<u128>, ApiError>

Returns the current head height of the given chain
§

fn fetch_all_active_xtx( &self, __runtime_api_at_param__: <Block as Block>::Hash, for_executor: AccountId ) -> Result<Vec<(Hash, Vec<SideEffect<AccountId, Balance>, Global>, Vec<Hash, Global>), Global>, ApiError>

source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> SessionKeys<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, Option<Vec<u8>>: UnwindSafe + RefUnwindSafe, Vec<u8>: UnwindSafe + RefUnwindSafe, Option<Vec<(Vec<u8>, KeyTypeId)>>: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn generate_session_keys( &self, __runtime_api_at_param__: <Block as Block>::Hash, seed: Option<Vec<u8, Global>> ) -> Result<Vec<u8, Global>, ApiError>

Generate a set of session keys with optionally using the given seed. The keys should be stored within the keystore exposed via runtime externalities. Read more
§

fn decode_session_keys( &self, __runtime_api_at_param__: <Block as Block>::Hash, encoded: Vec<u8, Global> ) -> Result<Option<Vec<(Vec<u8, Global>, KeyTypeId), Global>>, ApiError>

Decode the given public session keys. Read more
source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> TaggedTransactionQueue<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, TransactionSource: UnwindSafe + RefUnwindSafe, <__SrApiBlock__ as BlockT>::Extrinsic: UnwindSafe + RefUnwindSafe, <__SrApiBlock__ as BlockT>::Hash: UnwindSafe + RefUnwindSafe, TransactionValidity: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn validate_transaction_before_version_2( &self, __runtime_api_at_param__: <Block as Block>::Hash, tx: <Block as Block>::Extrinsic ) -> Result<Result<ValidTransaction, TransactionValidityError>, ApiError>

👎Deprecated
Validate the transaction.
§

fn validate_transaction_before_version_3( &self, __runtime_api_at_param__: <Block as Block>::Hash, source: TransactionSource, tx: <Block as Block>::Extrinsic ) -> Result<Result<ValidTransaction, TransactionValidityError>, ApiError>

👎Deprecated
Validate the transaction.
§

fn validate_transaction( &self, __runtime_api_at_param__: <Block as Block>::Hash, source: TransactionSource, tx: <Block as Block>::Extrinsic, block_hash: <Block as Block>::Hash ) -> Result<Result<ValidTransaction, TransactionValidityError>, ApiError>

Validate the transaction. Read more
source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> TransactionPaymentApi<__SrApiBlock__, u128> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, <__SrApiBlock__ as BlockT>::Extrinsic: UnwindSafe + RefUnwindSafe, u32: UnwindSafe + RefUnwindSafe, RuntimeDispatchInfo<Balance>: UnwindSafe + RefUnwindSafe, FeeDetails<Balance>: UnwindSafe + RefUnwindSafe, Weight: UnwindSafe + RefUnwindSafe, Balance: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn query_info( &self, __runtime_api_at_param__: <Block as Block>::Hash, uxt: <Block as Block>::Extrinsic, len: u32 ) -> Result<RuntimeDispatchInfo<Balance, Weight>, ApiError>

§

fn query_fee_details( &self, __runtime_api_at_param__: <Block as Block>::Hash, uxt: <Block as Block>::Extrinsic, len: u32 ) -> Result<FeeDetails<Balance>, ApiError>

§

fn query_weight_to_fee( &self, __runtime_api_at_param__: <Block as Block>::Hash, weight: Weight ) -> Result<Balance, ApiError>

§

fn query_length_to_fee( &self, __runtime_api_at_param__: <Block as Block>::Hash, length: u32 ) -> Result<Balance, ApiError>

source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> TransactionPaymentCallApi<__SrApiBlock__, u128, RuntimeCall> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, RuntimeCall: UnwindSafe + RefUnwindSafe, u32: UnwindSafe + RefUnwindSafe, RuntimeDispatchInfo<Balance>: UnwindSafe + RefUnwindSafe, FeeDetails<Balance>: UnwindSafe + RefUnwindSafe, Weight: UnwindSafe + RefUnwindSafe, Balance: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn query_call_info( &self, __runtime_api_at_param__: <Block as Block>::Hash, call: Call, len: u32 ) -> Result<RuntimeDispatchInfo<Balance, Weight>, ApiError>

Query information of a dispatch class, weight, and fee of a given encoded Call.
§

fn query_call_fee_details( &self, __runtime_api_at_param__: <Block as Block>::Hash, call: Call, len: u32 ) -> Result<FeeDetails<Balance>, ApiError>

Query fee details of a given encoded Call.
§

fn query_weight_to_fee( &self, __runtime_api_at_param__: <Block as Block>::Hash, weight: Weight ) -> Result<Balance, ApiError>

Query the output of the current WeightToFee given some input.
§

fn query_length_to_fee( &self, __runtime_api_at_param__: <Block as Block>::Hash, length: u32 ) -> Result<Balance, ApiError>

Query the output of the current LengthToFee given some input.
source§

impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> XdnsRuntimeApi<__SrApiBlock__, <<MultiSignature as Verify>::Signer as IdentifyAccount>::AccountId> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where RuntimeApiImplCall::StateBackend: StateBackend<HashFor<__SrApiBlock__>>, &'static RuntimeApiImplCall: Send, Vec<GatewayRecord<AccountId>>: UnwindSafe + RefUnwindSafe, Vec<FullGatewayRecord<AccountId>>: UnwindSafe + RefUnwindSafe, ChainId: UnwindSafe + RefUnwindSafe, Option<GatewayABIConfig>: UnwindSafe + RefUnwindSafe, TreasuryAccount: UnwindSafe + RefUnwindSafe, AccountId: UnwindSafe + RefUnwindSafe, __SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,

§

fn fetch_records( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<Vec<GatewayRecord<AccountId>, Global>, ApiError>

Returns metadata for all known Blockchains
§

fn fetch_full_gateway_records( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<Vec<FullGatewayRecord<AccountId>, Global>, ApiError>

§

fn fetch_abi( &self, __runtime_api_at_param__: <Block as Block>::Hash, chain_id: [u8; 4] ) -> Result<Option<GatewayABIConfig>, ApiError>

Returns the GatewayABIConfig for a given ChainId
§

fn retreive_treasury_address( &self, __runtime_api_at_param__: <Block as Block>::Hash, treasury_account: TreasuryAccount ) -> Result<AccountId, ApiError>

Auto Trait Implementations§

§

impl<Block, C> !RefUnwindSafe for RuntimeApiImpl<Block, C>

§

impl<Block, C> Send for RuntimeApiImpl<Block, C>where C: Sync,

§

impl<Block, C> !Sync for RuntimeApiImpl<Block, C>

§

impl<Block, C> Unpin for RuntimeApiImpl<Block, C>where <Block as Block>::Hash: Unpin, <<C as CallApiAt<Block>>::StateBackend as Backend<<<Block as Block>::Header as Header>::Hashing>>::Transaction: Unpin,

§

impl<Block, C> !UnwindSafe for RuntimeApiImpl<Block, C>

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CheckedConversion for T

§

fn checked_from<T>(t: T) -> Option<Self>where Self: TryFrom<T>,

Convert from a value of T into an equivalent instance of Option<Self>. Read more
§

fn checked_into<T>(self) -> Option<T>where Self: TryInto<T>,

Consume self to return Some equivalent value of Option<T>. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for Twhere T: Any,

§

fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T, Global>) -> Rc<dyn Any, Global>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for Twhere T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T, Global>) -> Arc<dyn Any + Sync + Send, Global>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>where Self: LowerExp,

Causes self to use its LowerExp implementation when Debug-formatted.
§

fn fmt_lower_hex(self) -> FmtLowerHex<Self>where Self: LowerHex,

Causes self to use its LowerHex implementation when Debug-formatted.
§

fn fmt_octal(self) -> FmtOctal<Self>where Self: Octal,

Causes self to use its Octal implementation when Debug-formatted.
§

fn fmt_pointer(self) -> FmtPointer<Self>where Self: Pointer,

Causes self to use its Pointer implementation when Debug-formatted.
§

fn fmt_upper_exp(self) -> FmtUpperExp<Self>where Self: UpperExp,

Causes self to use its UpperExp implementation when Debug-formatted.
§

fn fmt_upper_hex(self) -> FmtUpperHex<Self>where Self: UpperHex,

Causes self to use its UpperHex implementation when Debug-formatted.
§

fn fmt_list(self) -> FmtList<Self>where &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> IsType<T> for T

§

fn from_ref(t: &T) -> &T

Cast reference.
§

fn into_ref(&self) -> &T

Cast reference.
§

fn from_mut(t: &mut T) -> &mut T

Cast mutable reference.
§

fn into_mut(&mut self) -> &mut T

Cast mutable reference.
§

impl<T, Outer> IsWrappedBy<Outer> for Twhere Outer: AsRef<T> + AsMut<T> + From<T>, T: From<Outer>,

§

fn from_ref(outer: &Outer) -> &T

Get a reference to the inner from the outer.

§

fn from_mut(outer: &mut Outer) -> &mut T

Get a mutable reference to the inner from the outer.

§

impl<T> Pipe for Twhere T: ?Sized,

§

fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere Self: Sized,

Pipes by value. This is generally the method you want to use. Read more
§

fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere R: 'a,

Borrows self and passes that borrow into the pipe function. Read more
§

fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere R: 'a,

Mutably borrows self and passes that borrow into the pipe function. Read more
§

fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere Self: Borrow<B>, B: 'a + ?Sized, R: 'a,

Borrows self, then passes self.borrow() into the pipe function. Read more
§

fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R ) -> Rwhere Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.borrow_mut() into the pipe function. Read more
§

fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere Self: AsRef<U>, U: 'a + ?Sized, R: 'a,

Borrows self, then passes self.as_ref() into the pipe function.
§

fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere Self: AsMut<U>, U: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.as_mut() into the pipe function.
§

fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> Rwhere Self: Deref<Target = T>, T: 'a + ?Sized, R: 'a,

Borrows self, then passes self.deref() into the pipe function.
§

fn pipe_deref_mut<'a, T, R>( &'a mut self, func: impl FnOnce(&'a mut T) -> R ) -> Rwhere Self: DerefMut<Target = T> + Deref, T: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.deref_mut() into the pipe function.
§

impl<T> Pointable for T

§

const ALIGN: usize = mem::align_of::<T>()

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
§

impl<T> SaturatedConversion for T

§

fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,

Convert from a value of T into an equivalent instance of Self. Read more
§

fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,

Consume self to return an equivalent value of T. Read more
§

impl<T> Tap for T

§

fn tap(self, func: impl FnOnce(&Self)) -> Self

Immutable access to a value. Read more
§

fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

Mutable access to a value. Read more
§

fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,

Immutable access to the Borrow<B> of a value. Read more
§

fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,

Mutable access to the BorrowMut<B> of a value. Read more
§

fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,

Immutable access to the AsRef<R> view of a value. Read more
§

fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,

Mutable access to the AsMut<R> view of a value. Read more
§

fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere Self: Deref<Target = T>, T: ?Sized,

Immutable access to the Deref::Target of a value. Read more
§

fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere Self: DerefMut<Target = T> + Deref, T: ?Sized,

Mutable access to the Deref::Target of a value. Read more
§

fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

Calls .tap() only in debug builds, and is erased in release builds.
§

fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

Calls .tap_mut() only in debug builds, and is erased in release builds.
§

fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,

Calls .tap_borrow() only in debug builds, and is erased in release builds.
§

fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,

Calls .tap_borrow_mut() only in debug builds, and is erased in release builds.
§

fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,

Calls .tap_ref() only in debug builds, and is erased in release builds.
§

fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,

Calls .tap_ref_mut() only in debug builds, and is erased in release builds.
§

fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Selfwhere Self: Deref<Target = T>, T: ?Sized,

Calls .tap_deref() only in debug builds, and is erased in release builds.
§

fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere Self: DerefMut<Target = T> + Deref, T: ?Sized,

Calls .tap_deref_mut() only in debug builds, and is erased in release builds.
§

impl<T> TryConv for T

§

fn try_conv<T>(self) -> Result<T, Self::Error>where Self: TryInto<T>,

Attempts to convert self into T using TryInto<T>. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,

§

fn unchecked_into(self) -> T

The counterpart to unchecked_from.
§

impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,

§

fn unique_saturated_into(self) -> T

Consume self to return an equivalent value of T.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
§

impl<T> JsonSchemaMaybe for T