Struct gtest_runtime::RuntimeApiImpl
source · pub struct RuntimeApiImpl<Block: BlockT, C: CallApiAt<Block> + 'static> {
pub(crate) call: &'static C,
pub(crate) transaction_depth: RefCell<u16>,
pub(crate) changes: RefCell<OverlayedChanges<HashingFor<Block>>>,
pub(crate) recorder: Option<ProofRecorder<Block>>,
pub(crate) call_context: CallContext,
pub(crate) extensions: RefCell<Extensions>,
pub(crate) extensions_generated_for: RefCell<Option<Block::Hash>>,
}
Expand description
Implements all runtime apis for the client side.
Fields§
§call: &'static C
§transaction_depth: RefCell<u16>
§changes: RefCell<OverlayedChanges<HashingFor<Block>>>
§recorder: Option<ProofRecorder<Block>>
§call_context: CallContext
§extensions: RefCell<Extensions>
§extensions_generated_for: RefCell<Option<Block::Hash>>
Implementations§
source§impl<Block: BlockT, C: CallApiAt<Block>> RuntimeApiImpl<Block, C>
impl<Block: BlockT, C: CallApiAt<Block>> RuntimeApiImpl<Block, C>
pub(crate) fn commit_or_rollback_transaction(&self, commit: bool)
pub(crate) fn start_transaction(&self)
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<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
AccountId: UnwindSafe + RefUnwindSafe,
Index: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
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<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
AccountId: UnwindSafe + RefUnwindSafe,
Index: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
§fn account_nonce(
&self,
__runtime_api_at_param__: <Block as Block>::Hash,
account: AccountId
) -> Result<Nonce, ApiError>
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>
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 for generating proofs.
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 + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> AuthorityDiscoveryApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
Vec<AuthorityId>: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> AuthorityDiscoveryApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
Vec<AuthorityId>: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
Retrieve authority identifiers of the current and next authority set.
source§impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> BabeApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
BabeConfiguration: UnwindSafe + RefUnwindSafe,
Slot: UnwindSafe + RefUnwindSafe,
Epoch: UnwindSafe + RefUnwindSafe,
AuthorityId: UnwindSafe + RefUnwindSafe,
Option<OpaqueKeyOwnershipProof>: UnwindSafe + RefUnwindSafe,
EquivocationProof<<__SrApiBlock__ as BlockT>::Header>: UnwindSafe + RefUnwindSafe,
OpaqueKeyOwnershipProof: UnwindSafe + RefUnwindSafe,
Option<()>: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> BabeApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
BabeConfiguration: UnwindSafe + RefUnwindSafe,
Slot: UnwindSafe + RefUnwindSafe,
Epoch: UnwindSafe + RefUnwindSafe,
AuthorityId: UnwindSafe + RefUnwindSafe,
Option<OpaqueKeyOwnershipProof>: UnwindSafe + RefUnwindSafe,
EquivocationProof<<__SrApiBlock__ as BlockT>::Header>: UnwindSafe + RefUnwindSafe,
OpaqueKeyOwnershipProof: UnwindSafe + RefUnwindSafe,
Option<()>: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
§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.
§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.
§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.
§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.
§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).
§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.§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 + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> Benchmark<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
bool: UnwindSafe + RefUnwindSafe,
(Vec<BenchmarkList>, Vec<StorageInfo>): UnwindSafe + RefUnwindSafe,
BenchmarkConfig: UnwindSafe + RefUnwindSafe,
Result<Vec<BenchmarkBatch>, RuntimeString>: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> Benchmark<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
bool: UnwindSafe + RefUnwindSafe,
(Vec<BenchmarkList>, Vec<StorageInfo>): UnwindSafe + RefUnwindSafe,
BenchmarkConfig: UnwindSafe + RefUnwindSafe,
Result<Vec<BenchmarkBatch>, RuntimeString>: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
§fn benchmark_metadata(
&self,
__runtime_api_at_param__: <Block as Block>::Hash,
extra: bool
) -> Result<(Vec<BenchmarkList>, Vec<StorageInfo>), ApiError>
fn benchmark_metadata( &self, __runtime_api_at_param__: <Block as Block>::Hash, extra: bool ) -> Result<(Vec<BenchmarkList>, Vec<StorageInfo>), ApiError>
Get the benchmark metadata available for this runtime. Read more
§fn dispatch_benchmark(
&self,
__runtime_api_at_param__: <Block as Block>::Hash,
config: BenchmarkConfig
) -> Result<Result<Vec<BenchmarkBatch>, RuntimeString>, ApiError>
fn dispatch_benchmark( &self, __runtime_api_at_param__: <Block as Block>::Hash, config: BenchmarkConfig ) -> Result<Result<Vec<BenchmarkBatch>, RuntimeString>, ApiError>
Dispatch the given benchmark.
source§impl<__SrApiBlock__, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> BlockBuilder<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__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,
impl<__SrApiBlock__, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> BlockBuilder<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__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>
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>
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>
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>, 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.
§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__, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> Core<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
RuntimeVersion: UnwindSafe + RefUnwindSafe,
__SrApiBlock__: UnwindSafe + RefUnwindSafe + BlockT,
<__SrApiBlock__ as BlockT>::Header: UnwindSafe + RefUnwindSafe,
ExtrinsicInclusionMode: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
impl<__SrApiBlock__, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> Core<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
RuntimeVersion: UnwindSafe + RefUnwindSafe,
__SrApiBlock__: UnwindSafe + RefUnwindSafe + BlockT,
<__SrApiBlock__ as BlockT>::Header: UnwindSafe + RefUnwindSafe,
ExtrinsicInclusionMode: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
§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.
§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.
§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.
§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 + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> GenesisBuilder<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
Vec<u8>: UnwindSafe + RefUnwindSafe,
Result: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> GenesisBuilder<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
Vec<u8>: UnwindSafe + RefUnwindSafe,
Result: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
source§impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> GrandpaApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
GrandpaAuthorityList: UnwindSafe + RefUnwindSafe,
SetId: UnwindSafe + RefUnwindSafe,
EquivocationProof<<__SrApiBlock__ as BlockT>::Hash, NumberFor<__SrApiBlock__>>: UnwindSafe + RefUnwindSafe,
OpaqueKeyOwnershipProof: UnwindSafe + RefUnwindSafe,
Option<()>: UnwindSafe + RefUnwindSafe,
GrandpaId: UnwindSafe + RefUnwindSafe,
Option<OpaqueKeyOwnershipProof>: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> GrandpaApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
GrandpaAuthorityList: UnwindSafe + RefUnwindSafe,
SetId: UnwindSafe + RefUnwindSafe,
EquivocationProof<<__SrApiBlock__ as BlockT>::Hash, NumberFor<__SrApiBlock__>>: UnwindSafe + RefUnwindSafe,
OpaqueKeyOwnershipProof: UnwindSafe + RefUnwindSafe,
Option<()>: UnwindSafe + RefUnwindSafe,
GrandpaId: UnwindSafe + RefUnwindSafe,
Option<OpaqueKeyOwnershipProof>: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
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>
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>
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>
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<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
OpaqueMetadata: UnwindSafe + RefUnwindSafe,
u32: UnwindSafe + RefUnwindSafe,
Option<OpaqueMetadata>: UnwindSafe + RefUnwindSafe,
Vec<u32>: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> Metadata<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__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>
fn metadata( &self, __runtime_api_at_param__: <Block as Block>::Hash ) -> Result<OpaqueMetadata, ApiError>
Returns the metadata of a runtime.
source§impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> OffchainWorkerApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
<__SrApiBlock__ as BlockT>::Header: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> OffchainWorkerApi<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__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>
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>
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> SessionKeys<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
Vec<u8>: UnwindSafe + RefUnwindSafe,
Option<Vec<(Vec<u8>, KeyTypeId)>>: UnwindSafe + RefUnwindSafe,
Option<Vec<u8>>: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> SessionKeys<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__SrApiBlock__>>,
&'static RuntimeApiImplCall: Send,
Vec<u8>: UnwindSafe + RefUnwindSafe,
Option<Vec<(Vec<u8>, KeyTypeId)>>: UnwindSafe + RefUnwindSafe,
Option<Vec<u8>>: UnwindSafe + RefUnwindSafe,
__SrApiBlock__::Header: UnwindSafe + RefUnwindSafe,
source§impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> TaggedTransactionQueue<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__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,
impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> TaggedTransactionQueue<__SrApiBlock__> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__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>
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>
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>
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__, u64> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__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,
impl<__SrApiBlock__: BlockT + UnwindSafe + RefUnwindSafe, RuntimeApiImplCall: CallApiAt<__SrApiBlock__> + 'static> TransactionPaymentApi<__SrApiBlock__, u64> for RuntimeApiImpl<__SrApiBlock__, RuntimeApiImplCall>where
RuntimeApiImplCall::StateBackend: StateBackend<HashingFor<__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>, 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>
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>
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
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
§impl<T> Conv for T
impl<T> Conv for T
§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>
§impl<T> IsType<T> for T
impl<T> IsType<T> for T
§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
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
§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
§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>
§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.