[][src]Struct pallet_plasm_rewards::Module

pub struct Module<T: Trait>(_);

Implementations

impl<T: Trait + 'static> Module<T>[src]

pub fn for_dapps_era_reward<K: EncodeLike<EraIndex>>(
    key: K
) -> Option<BalanceOf<T>>
[src]

This is the compensation paid for the dapps operator of the Plasm Network. This is stored on a per-era basis.

pub fn for_security_era_reward<K: EncodeLike<EraIndex>>(
    key: K
) -> Option<BalanceOf<T>>
[src]

This is the compensation paid for the security of the Plasm Network. This is stored on a per-era basis.

pub fn history_depth() -> u32[src]

Number of era to keep in history.

Information is kept for eras in [current_era - history_depth; current_era]

Must be more than the number of era delayed by session otherwise. i.e. active era must always be in history. i.e. active_era > current_era - history_depth must be guaranteed.

24 * 28 = 672 eras is roughly 28 days on current Plasm Network. That seems like a reasonable length of time for users to claim a payout

pub fn current_era() -> Option<EraIndex>[src]

The current era index.

This is the latest planned era, depending on how session module queues the validator set, it might be active or not.

pub fn active_era() -> Option<ActiveEraInfo<MomentOf<T>>>[src]

The active era information, it holds index and start.

The active era is the era currently rewarded. Validator set of this era must be equal to SessionInterface::validators.

pub fn eras_start_session_index<K: EncodeLike<EraIndex>>(
    key: K
) -> Option<SessionIndex>
[src]

The session index at which the era start for the last HISTORY_DEPTH eras

pub fn force_era() -> Forcing[src]

True if the next session change will be a new era regardless of index.

Trait Implementations

impl<T: Trait> Callable<T> for Module<T>[src]

type Call = Call<T>

impl<T: Clone + Trait> Clone for Module<T>[src]

impl<T: Copy + Trait> Copy for Module<T>[src]

impl<T: Trait> Debug for Module<T> where
    T: Debug
[src]

impl<T: Eq + Trait> Eq for Module<T>[src]

impl<T: Trait> EraFinder<u32, u32, <<T as Trait>::Time as Time>::Moment> for Module<T>[src]

In this implementation using validator and dapps rewards module.

impl<T: Trait> ForDappsEraRewardFinder<<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance> for Module<T>[src]

Get the dapps rewards for dapps staking module.

impl<T: Trait> ForSecurityEraRewardFinder<<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance> for Module<T>[src]

Get the security rewards for validator module.

impl<T: Trait> HistoryDepthFinder for Module<T>[src]

Get the history depth

impl<T: Trait> IntegrityTest for Module<T>[src]

impl<T: Trait> ModuleErrorMetadata for Module<T>[src]

impl<T: Trait> OffchainWorker<<T as Trait>::BlockNumber> for Module<T>[src]

impl<T: Trait> OnFinalize<<T as Trait>::BlockNumber> for Module<T>[src]

impl<T: Trait> OnInitialize<<T as Trait>::BlockNumber> for Module<T>[src]

impl<T: Trait> OnRuntimeUpgrade for Module<T>[src]

impl<T: PartialEq + Trait> PartialEq<Module<T>> for Module<T>[src]

impl<T: Trait> SessionManager<<T as Trait>::AccountId> for Module<T>[src]

In this implementation new_session(session) must be called before end_session(session-1) i.e. the new session must be planned before the ending of the previous session.

Once the first new_session is planned, all session must start and then end in order, though some session can lag in between the newest session planned and the latest session started.

impl<T: Trait> StructuralEq for Module<T>[src]

impl<T: Trait> StructuralPartialEq for Module<T>[src]

Auto Trait Implementations

impl<T> RefUnwindSafe for Module<T> where
    T: RefUnwindSafe

impl<T> Send for Module<T> where
    T: Send

impl<T> Sync for Module<T> where
    T: Sync

impl<T> Unpin for Module<T> where
    T: Unpin

impl<T> UnwindSafe for Module<T> where
    T: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> CheckedConversion for T[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> IsType<T> for T[src]

impl<T, Outer> IsWrappedBy<Outer> for T where
    Outer: AsRef<T> + AsMut<T> + From<T>,
    T: From<Outer>, 
[src]

fn from_ref(outer: &Outer) -> &T[src]

Get a reference to the inner from the outer.

fn from_mut(outer: &mut Outer) -> &mut T[src]

Get a mutable reference to the inner from the outer.

impl<T> MaybeDebug for T where
    T: Debug

impl<T> MaybeDebug for T where
    T: Debug

impl<T> MaybeRefUnwindSafe for T where
    T: RefUnwindSafe

impl<T> Member for T where
    T: 'static + Clone + PartialEq<T> + Eq + Send + Sync + Debug
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> SaturatedConversion for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<S, T> UncheckedInto<T> for S where
    T: UncheckedFrom<S>, 
[src]

impl<T, S> UniqueSaturatedInto<T> for S where
    S: TryInto<T>,
    T: Bounded
[src]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,