pub trait TransactionPaymentApi: RuntimeApi {
type FeeDetails;
type RuntimeDispatchInfo;
type Balance;
type Weight;
// Required methods
fn query_fee_details<'life0, 'async_trait, Address, Call, Signature, TransactionExtension>(
&'life0 self,
extrinsic: UncheckedExtrinsic<Address, Call, Signature, TransactionExtension>,
length: u32,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::FeeDetails>> + '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 query_fee_details_opaque<'life0, 'async_trait>(
&'life0 self,
extrinsic: Vec<u8>,
length: u32,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::FeeDetails>> + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn query_info<'life0, 'async_trait, Address, Call, Signature, TransactionExtension>(
&'life0 self,
extrinsic: UncheckedExtrinsic<Address, Call, Signature, TransactionExtension>,
length: u32,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::RuntimeDispatchInfo>> + '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 query_info_opaque<'life0, 'async_trait>(
&'life0 self,
extrinsic: Vec<u8>,
length: u32,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::RuntimeDispatchInfo>> + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn query_length_to_fee<'life0, 'async_trait>(
&'life0 self,
length: u32,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::Balance>> + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn query_weight_to_fee<'life0, 'async_trait>(
&'life0 self,
weight: Self::Weight,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::Balance>> + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}
Required Associated Types§
Required Methods§
Sourcefn query_fee_details<'life0, 'async_trait, Address, Call, Signature, TransactionExtension>(
&'life0 self,
extrinsic: UncheckedExtrinsic<Address, Call, Signature, TransactionExtension>,
length: u32,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::FeeDetails>> + 'async_trait>>
fn query_fee_details<'life0, 'async_trait, Address, Call, Signature, TransactionExtension>( &'life0 self, extrinsic: UncheckedExtrinsic<Address, Call, Signature, TransactionExtension>, length: u32, at_block: Option<Self::Hash>, ) -> Pin<Box<dyn Future<Output = Result<Self::FeeDetails>> + 'async_trait>>
Query the transaction fee details.
Sourcefn query_fee_details_opaque<'life0, 'async_trait>(
&'life0 self,
extrinsic: Vec<u8>,
length: u32,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::FeeDetails>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn query_fee_details_opaque<'life0, 'async_trait>(
&'life0 self,
extrinsic: Vec<u8>,
length: u32,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::FeeDetails>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Query the transaction fee details of opaque extrinsic.
Sourcefn query_info<'life0, 'async_trait, Address, Call, Signature, TransactionExtension>(
&'life0 self,
extrinsic: UncheckedExtrinsic<Address, Call, Signature, TransactionExtension>,
length: u32,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::RuntimeDispatchInfo>> + 'async_trait>>
fn query_info<'life0, 'async_trait, Address, Call, Signature, TransactionExtension>( &'life0 self, extrinsic: UncheckedExtrinsic<Address, Call, Signature, TransactionExtension>, length: u32, at_block: Option<Self::Hash>, ) -> Pin<Box<dyn Future<Output = Result<Self::RuntimeDispatchInfo>> + 'async_trait>>
Query the transaction fee info.
Sourcefn query_info_opaque<'life0, 'async_trait>(
&'life0 self,
extrinsic: Vec<u8>,
length: u32,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::RuntimeDispatchInfo>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn query_info_opaque<'life0, 'async_trait>(
&'life0 self,
extrinsic: Vec<u8>,
length: u32,
at_block: Option<Self::Hash>,
) -> Pin<Box<dyn Future<Output = Result<Self::RuntimeDispatchInfo>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Query the transaction info of opaque extrinsic.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.