Struct pallet_assets::BalanceToAssetBalance
source · pub struct BalanceToAssetBalance<F, T, CON, I = ()>(_);
Expand description
Converts a balance value into an asset balance based on the ratio between the fungible’s minimum balance and the minimum asset balance.
Trait Implementations§
source§impl<F, T, CON, I> BalanceConversion<<F as Inspect<<T as Config>::AccountId>>::Balance, <T as Config<I>>::AssetId, <T as Config<I>>::Balance> for BalanceToAssetBalance<F, T, CON, I>where
F: Inspect<<T as Config>::AccountId>,
T: Config<I>,
I: 'static,
CON: Convert<<F as Inspect<<T as Config>::AccountId>>::Balance, <T as Config<I>>::Balance>,
<F as Inspect<<T as Config>::AccountId>>::Balance: FixedPointOperand + Zero,
<T as Config<I>>::Balance: FixedPointOperand + Zero,
impl<F, T, CON, I> BalanceConversion<<F as Inspect<<T as Config>::AccountId>>::Balance, <T as Config<I>>::AssetId, <T as Config<I>>::Balance> for BalanceToAssetBalance<F, T, CON, I>where
F: Inspect<<T as Config>::AccountId>,
T: Config<I>,
I: 'static,
CON: Convert<<F as Inspect<<T as Config>::AccountId>>::Balance, <T as Config<I>>::Balance>,
<F as Inspect<<T as Config>::AccountId>>::Balance: FixedPointOperand + Zero,
<T as Config<I>>::Balance: FixedPointOperand + Zero,
source§fn to_asset_balance(
balance: <F as Inspect<<T as Config>::AccountId>>::Balance,
asset_id: <T as Config<I>>::AssetId
) -> Result<<T as Config<I>>::Balance, ConversionError>
fn to_asset_balance(
balance: <F as Inspect<<T as Config>::AccountId>>::Balance,
asset_id: <T as Config<I>>::AssetId
) -> Result<<T as Config<I>>::Balance, ConversionError>
Convert the given balance value into an asset balance based on the ratio between the fungible’s minimum balance and the minimum asset balance.
Will return Err
if the asset is not found, not sufficient or the fungible’s minimum
balance is zero.
type Error = ConversionError
Auto Trait Implementations§
impl<F, T, CON, I> RefUnwindSafe for BalanceToAssetBalance<F, T, CON, I>where
CON: RefUnwindSafe,
F: RefUnwindSafe,
I: RefUnwindSafe,
T: RefUnwindSafe,
impl<F, T, CON, I> Send for BalanceToAssetBalance<F, T, CON, I>where
CON: Send,
F: Send,
I: Send,
T: Send,
impl<F, T, CON, I> Sync for BalanceToAssetBalance<F, T, CON, I>where
CON: Sync,
F: Sync,
I: Sync,
T: Sync,
impl<F, T, CON, I> Unpin for BalanceToAssetBalance<F, T, CON, I>where
CON: Unpin,
F: Unpin,
I: Unpin,
T: Unpin,
impl<F, T, CON, I> UnwindSafe for BalanceToAssetBalance<F, T, CON, I>where
CON: UnwindSafe,
F: UnwindSafe,
I: UnwindSafe,
T: UnwindSafe,
Blanket Implementations§
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
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 moresource§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read moresource§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read moresource§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read moresource§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
source§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 moresource§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§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 moresource§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).source§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.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.source§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.source§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.