Struct pallet_transaction_payment::pallet::Pallet
source · [−]pub struct Pallet<T>(_);
Expand description
The pallet implementing the on-chain logic.
Implementations
impl<T: Config> Pallet<T> where
<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance: FixedPointOperand,
impl<T: Config> Pallet<T> where
<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance: FixedPointOperand,
pub fn query_info<Extrinsic: Extrinsic + GetDispatchInfo>(
unchecked_extrinsic: Extrinsic,
len: u32
) -> RuntimeDispatchInfo<<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> where
T::Call: Dispatchable<Info = DispatchInfo>,
pub fn query_info<Extrinsic: Extrinsic + GetDispatchInfo>(
unchecked_extrinsic: Extrinsic,
len: u32
) -> RuntimeDispatchInfo<<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> where
T::Call: Dispatchable<Info = DispatchInfo>,
Query the data that we know about the fee of a given call
.
This pallet is not and cannot be aware of the internals of a signed extension, for example a tip. It only interprets the extrinsic as some encoded value and accounts for its weight and length, the runtime’s extrinsic base weight, and the current fee multiplier.
All dispatchables must be annotated with weight and will have some fee info. This function always returns.
pub fn query_fee_details<Extrinsic: Extrinsic + GetDispatchInfo>(
unchecked_extrinsic: Extrinsic,
len: u32
) -> FeeDetails<<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> where
T::Call: Dispatchable<Info = DispatchInfo>,
pub fn query_fee_details<Extrinsic: Extrinsic + GetDispatchInfo>(
unchecked_extrinsic: Extrinsic,
len: u32
) -> FeeDetails<<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> where
T::Call: Dispatchable<Info = DispatchInfo>,
Query the detailed fee of a given call
.
pub fn compute_fee(
len: u32,
info: &DispatchInfoOf<T::Call>,
tip: <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
) -> <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance where
T::Call: Dispatchable<Info = DispatchInfo>,
pub fn compute_fee(
len: u32,
info: &DispatchInfoOf<T::Call>,
tip: <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
) -> <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance where
T::Call: Dispatchable<Info = DispatchInfo>,
Compute the final fee value for a particular transaction.
pub fn compute_fee_details(
len: u32,
info: &DispatchInfoOf<T::Call>,
tip: <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
) -> FeeDetails<<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> where
T::Call: Dispatchable<Info = DispatchInfo>,
pub fn compute_fee_details(
len: u32,
info: &DispatchInfoOf<T::Call>,
tip: <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
) -> FeeDetails<<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> where
T::Call: Dispatchable<Info = DispatchInfo>,
Compute the fee details for a particular transaction.
pub fn compute_actual_fee(
len: u32,
info: &DispatchInfoOf<T::Call>,
post_info: &PostDispatchInfoOf<T::Call>,
tip: <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
) -> <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance where
T::Call: Dispatchable<Info = DispatchInfo, PostInfo = PostDispatchInfo>,
pub fn compute_actual_fee(
len: u32,
info: &DispatchInfoOf<T::Call>,
post_info: &PostDispatchInfoOf<T::Call>,
tip: <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
) -> <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance where
T::Call: Dispatchable<Info = DispatchInfo, PostInfo = PostDispatchInfo>,
Compute the actual post dispatch fee for a particular transaction.
Identical to compute_fee
with the only difference that the post dispatch corrected
weight is used for the weight fee calculation.
pub fn compute_actual_fee_details(
len: u32,
info: &DispatchInfoOf<T::Call>,
post_info: &PostDispatchInfoOf<T::Call>,
tip: <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
) -> FeeDetails<<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> where
T::Call: Dispatchable<Info = DispatchInfo, PostInfo = PostDispatchInfo>,
pub fn compute_actual_fee_details(
len: u32,
info: &DispatchInfoOf<T::Call>,
post_info: &PostDispatchInfoOf<T::Call>,
tip: <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
) -> FeeDetails<<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> where
T::Call: Dispatchable<Info = DispatchInfo, PostInfo = PostDispatchInfo>,
Compute the actual post dispatch fee details for a particular transaction.
Trait Implementations
impl<T> Convert<u64, <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> for Pallet<T> where
T: Config,
<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance: FixedPointOperand,
impl<T> Convert<u64, <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> for Pallet<T> where
T: Config,
<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance: FixedPointOperand,
fn convert(
weight: Weight
) -> <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
fn convert(
weight: Weight
) -> <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
Compute the fee for the specified weight.
This fee is already adjusted by the per block fee adjustment factor and is therefore the share that the weight contributes to the overall fee of a transaction. It is mainly for informational purposes and not used in the actual fee calculation.
impl<T: Config, AnyCall: GetDispatchInfo + Encode> EstimateCallFee<AnyCall, <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> for Pallet<T> where
<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance: FixedPointOperand,
T::Call: Dispatchable<Info = DispatchInfo, PostInfo = PostDispatchInfo>,
impl<T: Config, AnyCall: GetDispatchInfo + Encode> EstimateCallFee<AnyCall, <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance> for Pallet<T> where
<<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance: FixedPointOperand,
T::Call: Dispatchable<Info = DispatchInfo, PostInfo = PostDispatchInfo>,
fn estimate_call_fee(
call: &AnyCall,
post_info: PostDispatchInfo
) -> <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
fn estimate_call_fee(
call: &AnyCall,
post_info: PostDispatchInfo
) -> <<T as Config>::OnChargeTransaction as OnChargeTransaction<T>>::Balance
Estimate the fee of this call. Read more
Returns the current storage version as supported by the pallet.
Returns the on-chain storage version of the pallet as stored in the storage.
The block is being finalized. Implement to have something happen.
Run integrity test. Read more
This will be run when the block is being finalized (before on_finalize
).
Implement to have something happen using the remaining weight.
Will not fire if the remaining weight is 0.
Return the weight used, the hook will subtract it from current weight used
and pass the result to the next on_idle
hook if it exists. Read more
The block is being initialized. Implement to have something happen. Read more
Perform a module upgrade. Read more
Implementing this function on a module allows you to perform long-running tasks that make (by default) validators generate transactions that feed results of those long-running computations back on chain. Read more
Run integrity test. Read more
This function is being called after every block import (when fully synced). Read more
The block is being finalized. Implement to have something happen. Read more
Something that should happen at genesis.
The block is being finalized.
Implement to have something happen in case there is leftover weight.
Check the passed remaining_weight
to make sure it is high enough to allow for
your pallet’s extra computation. Read more
The block is being initialized. Implement to have something happen. Read more
Perform a module upgrade. Read more
Name of the Rust module containing the pallet.
Version of the crate containing the pallet.
Extend the given vector by all of the pallets’ information that this type represents. Read more
fn storage_info() -> Vec<StorageInfo>ⓘ
Auto Trait Implementations
impl<T> RefUnwindSafe for Pallet<T> where
T: RefUnwindSafe,
impl<T> UnwindSafe for Pallet<T> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
impl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
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
. Read more
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
impl<T> PalletVersionToStorageVersionHelper for T where
T: GetStorageVersion + PalletInfoAccess,
impl<T> PalletVersionToStorageVersionHelper for T where
T: GetStorageVersion + PalletInfoAccess,
The counterpart to unchecked_from
.
Consume self to return an equivalent value of T
.
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more