Struct common_runtime::fees::WeightToFeeImpl
source · pub struct WeightToFeeImpl<Balance, Runtime, Target>(PhantomData<Balance>, PhantomData<Runtime>, PhantomData<Target>);Expand description
A structure to implement Weight to Fee conversion.
Balance: The balance type.Runtime: The system configuration type, providing access to block weights.Target: A type providing the target block fullness.
Tuple Fields§
§0: PhantomData<Balance>§1: PhantomData<Runtime>§2: PhantomData<Target>Trait Implementations§
source§impl<Balance, Runtime, Target> WeightToFeePolynomial for WeightToFeeImpl<Balance, Runtime, Target>
impl<Balance, Runtime, Target> WeightToFeePolynomial for WeightToFeeImpl<Balance, Runtime, Target>
Trait implementation for converting transaction weight to fee.
This implementation is only included when the “constant-fees” feature is not enabled.
source§fn polynomial() -> WeightToFeeCoefficients<Self::Balance>
fn polynomial() -> WeightToFeeCoefficients<Self::Balance>
Function to get the polynomial coefficients for weight to fee conversion.
This function calculates the polynomial coefficients for converting transaction weight to fee. If the current block weight and length are less than a fraction of the block max weight and length, and the fee multiplier is one, it returns zero. Otherwise, it calculates the coefficients based on the extrinsic base weight mapped to 5 cents.
Auto Trait Implementations§
impl<Balance, Runtime, Target> Freeze for WeightToFeeImpl<Balance, Runtime, Target>
impl<Balance, Runtime, Target> RefUnwindSafe for WeightToFeeImpl<Balance, Runtime, Target>
impl<Balance, Runtime, Target> Send for WeightToFeeImpl<Balance, Runtime, Target>
impl<Balance, Runtime, Target> Sync for WeightToFeeImpl<Balance, Runtime, Target>
impl<Balance, Runtime, Target> Unpin for WeightToFeeImpl<Balance, Runtime, Target>
impl<Balance, Runtime, Target> UnwindSafe for WeightToFeeImpl<Balance, Runtime, Target>
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
§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> 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> 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>
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>
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<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> 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>,
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>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
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
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.§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
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
T.§impl<T> WeightToFee for Twhere
T: WeightToFeePolynomial,
impl<T> WeightToFee for Twhere
T: WeightToFeePolynomial,
§fn weight_to_fee(weight: &Weight) -> <T as WeightToFee>::Balance
fn weight_to_fee(weight: &Weight) -> <T as WeightToFee>::Balance
Calculates the fee from the passed weight according to the polynomial.
This should not be overridden in most circumstances. Calculation is done in the
Balance type and never overflows. All evaluation is saturating.