pub trait BlockBuilderApi: RuntimeApi {
type ApplyExtrinsicResult;
type Block;
type InherentData;
type CheckInherentsResult;
type Header;
// Required methods
fn apply_extrinsic<'life0, 'async_trait, Address, Call, Signature, TransactionExtension>(
&'life0 self,
extrinsic: UncheckedExtrinsic<Address, Call, Signature, TransactionExtension>,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::ApplyExtrinsicResult>> + 'async_trait>>
where Address: Encode + 'async_trait,
Call: Encode + 'async_trait,
Signature: Encode + 'async_trait,
TransactionExtension: Encode + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait;
fn apply_opaque_extrinsic<'life0, 'async_trait>(
&'life0 self,
extrinsic: Vec<u8>,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::ApplyExtrinsicResult>> + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn check_inherents<'life0, 'async_trait>(
&'life0 self,
block: Self::Block,
data: Self::InherentData,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::CheckInherentsResult>> + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn finalize_block<'life0, 'async_trait>(
&'life0 self,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::Header>> + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn inherent_extrinsics<'life0, 'async_trait>(
&'life0 self,
inherent: Self::InherentData,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Bytes>>> + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}Required Associated Types§
type ApplyExtrinsicResult
type Block
type InherentData
type CheckInherentsResult
type Header
Required Methods§
Sourcefn apply_extrinsic<'life0, 'async_trait, Address, Call, Signature, TransactionExtension>(
&'life0 self,
extrinsic: UncheckedExtrinsic<Address, Call, Signature, TransactionExtension>,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::ApplyExtrinsicResult>> + 'async_trait>>
fn apply_extrinsic<'life0, 'async_trait, Address, Call, Signature, TransactionExtension>( &'life0 self, extrinsic: UncheckedExtrinsic<Address, Call, Signature, TransactionExtension>, at_block: Option<Self::Hash>, ) -> Pin<Box<dyn Future<Output = Result<Self::ApplyExtrinsicResult>> + 'async_trait>>
Apply the given extrinsic.
Sourcefn apply_opaque_extrinsic<'life0, 'async_trait>(
&'life0 self,
extrinsic: Vec<u8>,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::ApplyExtrinsicResult>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn apply_opaque_extrinsic<'life0, 'async_trait>(
&'life0 self,
extrinsic: Vec<u8>,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::ApplyExtrinsicResult>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Apply the given opaque extrinsic.
Sourcefn check_inherents<'life0, 'async_trait>(
&'life0 self,
block: Self::Block,
data: Self::InherentData,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::CheckInherentsResult>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn check_inherents<'life0, 'async_trait>(
&'life0 self,
block: Self::Block,
data: Self::InherentData,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::CheckInherentsResult>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Check that the inherents are valid.
Sourcefn finalize_block<'life0, 'async_trait>(
&'life0 self,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::Header>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn finalize_block<'life0, 'async_trait>(
&'life0 self,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::Header>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Finish the current block.
Sourcefn inherent_extrinsics<'life0, 'async_trait>(
&'life0 self,
inherent: Self::InherentData,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Bytes>>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn inherent_extrinsics<'life0, 'async_trait>(
&'life0 self,
inherent: Self::InherentData,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Bytes>>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Generate inherent extrinsics and return them as encoded Bytes.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".