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, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> AccountNonceApi<__SrApiBlock__, <CryptoBytes<sp_core::::sr25519::Signature::{constant#0}, (SignatureTag, Sr25519Tag)> as Verify>::Signer, u64> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> AccountNonceApi<__SrApiBlock__, <CryptoBytes<sp_core::::sr25519::Signature::{constant#0}, (SignatureTag, Sr25519Tag)> as Verify>::Signer, u64> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
Source§impl<Block: BlockT, C: CallApiAt<Block>> ApiExt<Block> for RuntimeApiImpl<Block, C>
 
impl<Block: BlockT, C: CallApiAt<Block>> ApiExt<Block> for RuntimeApiImpl<Block, C>
Source§fn execute_in_transaction<F: FnOnce(&Self) -> TransactionOutcome<R>, R>(
    &self,
    call: F,
) -> Rwhere
    Self: Sized,
 
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,
 
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,
 
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,
 
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)
 
fn record_proof(&mut self)
Start recording all accessed trie nodes. Read more
Source§fn record_proof_with_recorder(&mut self, recorder: ProofRecorder<Block>)
 
fn record_proof_with_recorder(&mut self, recorder: ProofRecorder<Block>)
Start recording all accessed trie nodes using the given proof recorder. Read more
Source§fn proof_recorder(&self) -> Option<ProofRecorder<Block>>
 
fn proof_recorder(&self) -> Option<ProofRecorder<Block>>
Returns the current active proof recorder.
Source§fn extract_proof(&mut self) -> Option<StorageProof>
 
fn extract_proof(&mut self) -> Option<StorageProof>
Extract the recorded proof. Read more
Source§fn into_storage_changes<B: StateBackend<HashingFor<Block>>>(
    &self,
    backend: &B,
    parent_hash: Block::Hash,
) -> Result<StorageChanges<Block>, String>where
    Self: Sized,
 
fn into_storage_changes<B: StateBackend<HashingFor<Block>>>(
    &self,
    backend: &B,
    parent_hash: Block::Hash,
) -> Result<StorageChanges<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)
 
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)
 
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, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> AuraApi<__SrApiBlock__, Public> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> AuraApi<__SrApiBlock__, Public> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
Source§fn slot_duration(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
) -> Result<SlotDuration, ApiError>
 
fn slot_duration( &self, __runtime_api_at_param__: <Block as Block>::Hash, ) -> Result<SlotDuration, ApiError>
Returns the slot duration for Aura. Read more
Return the current set of authorities.
Source§impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> BabeApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> BabeApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
Source§fn configuration(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
) -> Result<BabeConfiguration, ApiError>
 
fn configuration( &self, __runtime_api_at_param__: <Block as Block>::Hash, ) -> Result<BabeConfiguration, ApiError>
Return the configuration for BABE.
Source§fn configuration_before_version_2(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
) -> Result<BabeConfigurationV1, ApiError>
 
fn configuration_before_version_2( &self, __runtime_api_at_param__: <Block as Block>::Hash, ) -> Result<BabeConfigurationV1, ApiError>
👎Deprecated
Return the configuration for BABE. Version 1.
Source§fn current_epoch_start(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
) -> Result<Slot, ApiError>
 
fn current_epoch_start( &self, __runtime_api_at_param__: <Block as Block>::Hash, ) -> Result<Slot, ApiError>
Returns the slot that started the current epoch.
Source§fn current_epoch(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
) -> Result<Epoch, ApiError>
 
fn current_epoch( &self, __runtime_api_at_param__: <Block as Block>::Hash, ) -> Result<Epoch, ApiError>
Returns information regarding the current epoch.
Source§fn next_epoch(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
) -> Result<Epoch, ApiError>
 
fn next_epoch( &self, __runtime_api_at_param__: <Block as Block>::Hash, ) -> Result<Epoch, ApiError>
Returns information regarding the next epoch (which was already
previously announced).
Source§fn generate_key_ownership_proof(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
    slot: Slot,
    authority_id: Public,
) -> Result<Option<OpaqueKeyOwnershipProof>, ApiError>
 
fn generate_key_ownership_proof( &self, __runtime_api_at_param__: <Block as Block>::Hash, slot: Slot, authority_id: Public, ) -> Result<Option<OpaqueKeyOwnershipProof>, ApiError>
Generates a proof of key ownership for the given authority in the
current epoch. 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 
slot as parameter the current
implementations ignores this parameter and instead relies on this
method being called at the correct block height, i.e. any point at
which the epoch for the given slot is live on-chain. Future
implementations will instead use indexed data through an offchain
worker, not requiring older states to be available.Source§fn submit_report_equivocation_unsigned_extrinsic(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
    equivocation_proof: EquivocationProof<<Block as Block>::Header, Public>,
    key_owner_proof: OpaqueKeyOwnershipProof,
) -> Result<Option<()>, ApiError>
 
fn submit_report_equivocation_unsigned_extrinsic( &self, __runtime_api_at_param__: <Block as Block>::Hash, equivocation_proof: EquivocationProof<<Block as Block>::Header, Public>, 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.Source§impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> BlockBuilder<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> BlockBuilder<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
Source§fn apply_extrinsic(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
    extrinsic: <Block as Block>::Extrinsic,
) -> Result<Result<Result<(), DispatchError>, TransactionValidityError>, ApiError>
 
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
Source§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>
 
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
Source§fn finalize_block(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
) -> Result<<Block as Block>::Header, ApiError>
 
fn finalize_block( &self, __runtime_api_at_param__: <Block as Block>::Hash, ) -> Result<<Block as Block>::Header, ApiError>
Finish the current block.
Source§fn inherent_extrinsics(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
    inherent: InherentData,
) -> Result<Vec<<Block as Block>::Extrinsic>, ApiError>
 
fn inherent_extrinsics( &self, __runtime_api_at_param__: <Block as Block>::Hash, inherent: InherentData, ) -> Result<Vec<<Block as Block>::Extrinsic>, ApiError>
Generate inherent extrinsics. The inherent data will vary from chain to chain.
Source§fn check_inherents(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
    block: Block,
    data: InherentData,
) -> Result<CheckInherentsResult, ApiError>
 
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, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> Core<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> Core<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
Source§fn version(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
) -> Result<RuntimeVersion, ApiError>
 
fn version( &self, __runtime_api_at_param__: <Block as Block>::Hash, ) -> Result<RuntimeVersion, ApiError>
Returns the version of the runtime.
Source§fn execute_block(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
    block: Block,
) -> Result<(), ApiError>
 
fn execute_block( &self, __runtime_api_at_param__: <Block as Block>::Hash, block: Block, ) -> Result<(), ApiError>
Execute the given block.
Source§fn initialize_block_before_version_5(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
    header: &<Block as Block>::Header,
) -> Result<(), ApiError>
 
fn initialize_block_before_version_5( &self, __runtime_api_at_param__: <Block as Block>::Hash, header: &<Block as Block>::Header, ) -> Result<(), ApiError>
👎Deprecated
Initialize a block with the given header.
Source§fn initialize_block(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
    header: &<Block as Block>::Header,
) -> Result<ExtrinsicInclusionMode, ApiError>
 
fn initialize_block( &self, __runtime_api_at_param__: <Block as Block>::Hash, header: &<Block as Block>::Header, ) -> Result<ExtrinsicInclusionMode, ApiError>
Initialize a block with the given header and return the runtime executive mode.
Source§impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> GenesisBuilder<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> GenesisBuilder<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
Source§fn build_state(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
    json: Vec<u8>,
) -> Result<Result<(), String>, ApiError>
 
fn build_state( &self, __runtime_api_at_param__: <Block as Block>::Hash, json: Vec<u8>, ) -> Result<Result<(), String>, ApiError>
Build 
RuntimeGenesisConfig from a JSON blob not using any defaults and store it in the
storage. Read moreSource§impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> GrandpaApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> GrandpaApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
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
Source§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: OpaqueValue,
) -> Result<Option<()>, ApiError>
 
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: OpaqueValue, ) -> 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.Source§fn generate_key_ownership_proof(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
    set_id: u64,
    authority_id: Public,
) -> Result<Option<OpaqueValue>, ApiError>
 
fn generate_key_ownership_proof( &self, __runtime_api_at_param__: <Block as Block>::Hash, set_id: u64, authority_id: Public, ) -> Result<Option<OpaqueValue>, 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.Source§impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> Metadata<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> Metadata<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
Source§fn metadata(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
) -> Result<OpaqueMetadata, ApiError>
 
fn metadata( &self, __runtime_api_at_param__: <Block as Block>::Hash, ) -> Result<OpaqueMetadata, ApiError>
Returns the metadata of a runtime.
Source§impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> OffchainWorkerApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> OffchainWorkerApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
Source§impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> SessionKeys<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> SessionKeys<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
Source§fn generate_session_keys(
    &self,
    __runtime_api_at_param__: <Block as Block>::Hash,
    seed: Option<Vec<u8>>,
) -> Result<Vec<u8>, ApiError>
 
fn generate_session_keys( &self, __runtime_api_at_param__: <Block as Block>::Hash, seed: Option<Vec<u8>>, ) -> Result<Vec<u8>, 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
Source§impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> TaggedTransactionQueue<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> TaggedTransactionQueue<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
Source§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>
 
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.
Source§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>
 
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.
Source§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>
 
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, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> TestAPI<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
 
impl<__SrApiBlock__: BlockT, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> TestAPI<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
    RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
    &'static RuntimeApiImplCall: Send,
Source§fn balance_of(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
    id: AccountId,
) -> Result<u64, ApiError>
 
fn balance_of( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, id: AccountId, ) -> Result<u64, ApiError>
Return the balance of the given account id.
Source§fn benchmark_add_one(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
    val: &u64,
) -> Result<u64, ApiError>
 
fn benchmark_add_one( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, val: &u64, ) -> Result<u64, ApiError>
A benchmark function that adds one to the given value and returns the result.
Source§fn benchmark_vector_add_one(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
    vec: &Vec<u64>,
) -> Result<Vec<u64>, ApiError>
 
fn benchmark_vector_add_one( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, vec: &Vec<u64>, ) -> Result<Vec<u64>, ApiError>
A benchmark function that adds one to each value in the given vector and returns the
result.
Source§fn function_signature_changed_before_version_2(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<Vec<u64>, ApiError>
 
fn function_signature_changed_before_version_2( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<Vec<u64>, ApiError>
👎Deprecated
A function for that the signature changed in version 
2.Source§fn function_signature_changed(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<u64, ApiError>
 
fn function_signature_changed( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<u64, ApiError>
The new signature.
Source§fn use_trie(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<u64, ApiError>
 
fn use_trie( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<u64, ApiError>
trie no_std testing
Source§fn benchmark_indirect_call(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<u64, ApiError>
 
fn benchmark_indirect_call( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<u64, ApiError>
Calls function in the loop using never-inlined function pointer
Source§fn benchmark_direct_call(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<u64, ApiError>
 
fn benchmark_direct_call( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<u64, ApiError>
Calls function in the loop
Source§fn vec_with_capacity(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
    size: u32,
) -> Result<Vec<u8>, ApiError>
 
fn vec_with_capacity( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, size: u32, ) -> Result<Vec<u8>, ApiError>
Allocates vector with given capacity.
Source§fn get_block_number(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<u64, ApiError>
 
fn get_block_number( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<u64, ApiError>
Returns the initialized block number.
Source§fn test_ed25519_crypto(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<(AppSignature, AppPublic, AppProofOfPossession), ApiError>
 
fn test_ed25519_crypto( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<(AppSignature, AppPublic, AppProofOfPossession), ApiError>
Test that 
ed25519 crypto works in the runtime. Read moreSource§fn test_sr25519_crypto(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<(AppSignature, AppPublic, AppProofOfPossession), ApiError>
 
fn test_sr25519_crypto( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<(AppSignature, AppPublic, AppProofOfPossession), ApiError>
Test that 
sr25519 crypto works in the runtime. Read moreSource§fn test_ecdsa_crypto(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<(AppSignature, AppPublic, AppProofOfPossession), ApiError>
 
fn test_ecdsa_crypto( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<(AppSignature, AppPublic, AppProofOfPossession), ApiError>
Test that 
ecdsa crypto works in the runtime. Read moreSource§fn test_bls381_crypto(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<(Bls381Pop, Bls381Public), ApiError>
 
fn test_bls381_crypto( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<(Bls381Pop, Bls381Public), ApiError>
Test that 
bls381 crypto works in the runtime Read moreSource§fn test_ecdsa_bls381_crypto(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<(EcdsaBls381Pop, EcdsaBls381Public), ApiError>
 
fn test_ecdsa_bls381_crypto( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<(EcdsaBls381Pop, EcdsaBls381Public), ApiError>
Test that 
ecdsa_bls381_crypto works in the runtime Read moreSource§fn test_storage(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<(), ApiError>
 
fn test_storage( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<(), ApiError>
Run various tests against storage.
Source§fn test_witness(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
    proof: StorageProof,
    root: Hash,
) -> Result<(), ApiError>
 
fn test_witness( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, proof: StorageProof, root: Hash, ) -> Result<(), ApiError>
Check a witness.
Source§fn test_multiple_arguments(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
    data: Vec<u8>,
    other: Vec<u8>,
    num: u32,
) -> Result<(), ApiError>
 
fn test_multiple_arguments( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, data: Vec<u8>, other: Vec<u8>, num: u32, ) -> Result<(), ApiError>
Test that ensures that we can call a function that takes multiple
arguments.
Source§fn do_trace_log(
    &self,
    __runtime_api_at_param__: <Block as BlockT>::Hash,
) -> Result<(), ApiError>
 
fn do_trace_log( &self, __runtime_api_at_param__: <Block as BlockT>::Hash, ) -> Result<(), ApiError>
Traces log “Hey I’m runtime.”
Auto Trait Implementations§
impl<Block, C> !Freeze for RuntimeApiImpl<Block, C>
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>
impl<Block, C> !UnwindSafe for RuntimeApiImpl<Block, C>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CheckedConversion for T
 
impl<T> CheckedConversion for T
§impl<T> Conv for T
 
impl<T> Conv for T
Source§impl<T, U> DefensiveTruncateInto<U> for Twhere
    U: DefensiveTruncateFrom<T>,
 
impl<T, U> DefensiveTruncateInto<U> for Twhere
    U: DefensiveTruncateFrom<T>,
Source§fn defensive_truncate_into(self) -> U
 
fn defensive_truncate_into(self) -> U
Defensively truncate a value and convert it into its bounded form.
§impl<T> FmtForward for T
 
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
    Self: Binary,
 
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,
 
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,
 
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,
 
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,
 
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,
 
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,
 
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,
 
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,
 
fn fmt_list(self) -> FmtList<Self>where
    &'a Self: for<'a> IntoIterator,
Formats each item in a sequence. Read more
§impl<T> Instrument for T
 
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
 
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
 
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> Instrument for T
 
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
 
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
 
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
 
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
 
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
 
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<Src, Dest> IntoTuple<Dest> for Srcwhere
    Dest: FromTuple<Src>,
 
impl<Src, Dest> IntoTuple<Dest> for Srcwhere
    Dest: FromTuple<Src>,
fn into_tuple(self) -> Dest
Source§impl<T, Outer> IsWrappedBy<Outer> for T
 
impl<T, Outer> IsWrappedBy<Outer> for T
§impl<T> Pipe for Twhere
    T: ?Sized,
 
impl<T> Pipe for Twhere
    T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
    Self: 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,
 
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,
 
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) -> R
 
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
    &'a mut self,
    func: impl FnOnce(&'a mut B) -> R,
) -> R
 
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
 
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
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) -> R
 
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
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) -> R
 
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
Borrows 
self, then passes self.deref() into the pipe function.§impl<T> Pointable for T
 
impl<T> Pointable for T
Source§impl<T> SaturatedConversion for T
 
impl<T> SaturatedConversion for T
Source§fn saturated_from<T>(t: T) -> Selfwhere
    Self: UniqueSaturatedFrom<T>,
 
fn saturated_from<T>(t: T) -> Selfwhere
    Self: UniqueSaturatedFrom<T>,
Source§fn saturated_into<T>(self) -> Twhere
    Self: UniqueSaturatedInto<T>,
 
fn saturated_into<T>(self) -> Twhere
    Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of 
T. Read more§impl<SS, SP> SupersetOf<SS> for SPwhere
    SS: SubsetOf<SP>,
 
impl<SS, SP> SupersetOf<SS> for SPwhere
    SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
 
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct 
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
 
fn is_in_subset(&self) -> bool
Checks if 
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
 
fn to_subset_unchecked(&self) -> SS
Use with care! Same as 
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
 
fn from_subset(element: &SS) -> SP
The inclusion map: converts 
self to the equivalent element of its superset.§impl<T> Tap for T
 
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
 
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Immutable access to the 
Borrow<B> of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
 
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
Mutable access to the 
BorrowMut<B> of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
 
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
Immutable access to the 
AsRef<R> view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
 
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
Mutable access to the 
AsMut<R> view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
 
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Immutable access to the 
Deref::Target of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
 
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Mutable access to the 
Deref::Target of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
 
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
 
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)) -> Self
 
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
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)) -> Self
 
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
Calls 
.tap_borrow_mut() only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
 
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
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)) -> Self
 
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
Calls 
.tap_ref_mut() only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
 
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
Calls 
.tap_deref() only in debug builds, and is erased in release
builds.§impl<T> TryConv for T
 
impl<T> TryConv for T
Source§impl<T, U> TryIntoKey<U> for Twhere
    U: TryFromKey<T>,
 
impl<T, U> TryIntoKey<U> for Twhere
    U: TryFromKey<T>,
type Error = <U as TryFromKey<T>>::Error
fn try_into_key(self) -> Result<U, <U as TryFromKey<T>>::Error>
Source§impl<S, T> UncheckedInto<T> for Swhere
    T: UncheckedFrom<S>,
 
impl<S, T> UncheckedInto<T> for Swhere
    T: UncheckedFrom<S>,
Source§fn unchecked_into(self) -> T
 
fn unchecked_into(self) -> T
The counterpart to 
unchecked_from.Source§impl<T, S> UniqueSaturatedInto<T> for S
 
impl<T, S> UniqueSaturatedInto<T> for S
Source§fn unique_saturated_into(self) -> T
 
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of 
T.