Type Alias VirtualBalance

Source
pub type VirtualBalance<T, I = ()> = LazyVirtual<T, BalanceAsset, BalanceRational, BalanceTime, BalanceAddon, I>;
Expand description

Virtual representation of a live lazy-balance.

Backed by the lazy balance model, meaning storage layouts are interpreted dynamically by the caller rather than the implementor.

Aliased Type§

pub struct VirtualBalance<T, I = ()> {
    asset: SumDynType<<<T as Config<I>>::Asset as Inspect<<T as Config>::AccountId>>::Balance, <<<T as Config<I>>::BalanceContext as ModelContext>::Context as VirtualDynBound<BalanceAsset>>::Bound>,
    bias: SumDynType<<T as Config<I>>::Bias, <<<T as Config<I>>::BalanceContext as ModelContext>::Context as VirtualDynBound<BalanceRational>>::Bound>,
    time: SumDynType<<T as Config<I>>::Time, <<<T as Config<I>>::BalanceContext as ModelContext>::Context as VirtualDynBound<BalanceTime>>::Bound>,
    addon: <<<T as Config<I>>::BalanceContext as ModelContext>::Context as VirtualDynExtensionSchema<BalanceAddon>>::Repr,
}

Fields§

§asset: SumDynType<<<T as Config<I>>::Asset as Inspect<<T as Config>::AccountId>>::Balance, <<<T as Config<I>>::BalanceContext as ModelContext>::Context as VirtualDynBound<BalanceAsset>>::Bound>

Asset-related fields resolved via VirtualDynField.

Uses SumDynType with capacity bounded by VirtualDynBound for Asset.

§bias: SumDynType<<T as Config<I>>::Bias, <<<T as Config<I>>::BalanceContext as ModelContext>::Context as VirtualDynBound<BalanceRational>>::Bound>

Rational fields (e.g. bias / price factors) resolved via VirtualDynField.

Backed by SumDynType and bounded by VirtualDynBound for Rational.

§time: SumDynType<<T as Config<I>>::Time, <<<T as Config<I>>::BalanceContext as ModelContext>::Context as VirtualDynBound<BalanceTime>>::Bound>

Time-related fields (e.g. checkpoints) resolved via VirtualDynField.

Encoded as SumDynType with bounds provided by VirtualDynBound for Time.

§addon: <<<T as Config<I>>::BalanceContext as ModelContext>::Context as VirtualDynExtensionSchema<BalanceAddon>>::Repr

Extension storage defined by VirtualDynExtensionSchema.

Layout and semantics are fully provided by ProductProvider via the associated extension schema (Addon).