Type Alias LazyVirtual

Source
pub type LazyVirtual<T, A, R, Ti, Ad, I = ()> = ProductType<T, I, BalanceModelContext<T, I>, A, R, Ti, Ad>;
Expand description

A generic virtual structure. It acts as the core building block for all lazy balance-related virtual types.

Aliased Type§

pub struct LazyVirtual<T, A, R, Ti, Ad, 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<A>>::Bound>,
    bias: SumDynType<<T as Config<I>>::Bias, <<<T as Config<I>>::BalanceContext as ModelContext>::Context as VirtualDynBound<R>>::Bound>,
    time: SumDynType<<T as Config<I>>::Time, <<<T as Config<I>>::BalanceContext as ModelContext>::Context as VirtualDynBound<Ti>>::Bound>,
    addon: <<<T as Config<I>>::BalanceContext as ModelContext>::Context as VirtualDynExtensionSchema<Ad>>::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<A>>::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<R>>::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<Ti>>::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<Ad>>::Repr

Extension storage defined by VirtualDynExtensionSchema.

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