Struct pallet_nis::pallet::Pallet
source · pub struct Pallet<T>(_);
Expand description
The Pallet
struct, the main type that implements traits and standalone
functions within the pallet.
Implementations§
source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
sourcepub fn place_bid(
origin: OriginFor<T>,
amount: <<T as Config>::Currency as FunInspect<<T as Config>::AccountId>>::Balance,
duration: u32
) -> DispatchResult
pub fn place_bid( origin: OriginFor<T>, amount: <<T as Config>::Currency as FunInspect<<T as Config>::AccountId>>::Balance, duration: u32 ) -> DispatchResult
Place a bid.
Origin must be Signed, and account must have at least amount
in free balance.
amount
: The amount of the bid; these funds will be reserved, and if/when consolidated, removed. Must be at leastMinBid
.duration
: The number of periods before which the newly consolidated bid may be thawed. Must be greater than 1 and no more thanQueueCount
.
Complexities:
Queues[duration].len()
(just take max).
sourcepub fn retract_bid(
origin: OriginFor<T>,
amount: <<T as Config>::Currency as FunInspect<<T as Config>::AccountId>>::Balance,
duration: u32
) -> DispatchResult
pub fn retract_bid( origin: OriginFor<T>, amount: <<T as Config>::Currency as FunInspect<<T as Config>::AccountId>>::Balance, duration: u32 ) -> DispatchResult
Retract a previously placed bid.
Origin must be Signed, and the account should have previously issued a still-active bid
of amount
for duration
.
amount
: The amount of the previous bid.duration
: The duration of the previous bid.
sourcepub fn fund_deficit(origin: OriginFor<T>) -> DispatchResult
pub fn fund_deficit(origin: OriginFor<T>) -> DispatchResult
Ensure we have sufficient funding for all potential payouts.
origin
: Must be accepted byFundOrigin
.
sourcepub fn thaw_private(
origin: OriginFor<T>,
index: ReceiptIndex,
maybe_proportion: Option<Perquintill>
) -> DispatchResult
pub fn thaw_private( origin: OriginFor<T>, index: ReceiptIndex, maybe_proportion: Option<Perquintill> ) -> DispatchResult
Reduce or remove an outstanding receipt, placing the according proportion of funds into the account of the owner.
origin
: Must be Signed and the account must be the owner of the receiptindex
as well as any fungible counterpart.index
: The index of the receipt.portion
: IfSome
, then only the given portion of the receipt should be thawed. IfNone
, then all of it should be.
sourcepub fn thaw_communal(
origin: OriginFor<T>,
index: ReceiptIndex
) -> DispatchResult
pub fn thaw_communal( origin: OriginFor<T>, index: ReceiptIndex ) -> DispatchResult
Reduce or remove an outstanding receipt, placing the according proportion of funds into the account of the owner.
origin
: Must be Signed and the account must be the owner of the fungible counterpart for receiptindex
.index
: The index of the receipt.
sourcepub fn communify(origin: OriginFor<T>, index: ReceiptIndex) -> DispatchResult
pub fn communify(origin: OriginFor<T>, index: ReceiptIndex) -> DispatchResult
Make a private receipt communal and create fungible counterparts for its owner.
sourcepub fn privatize(origin: OriginFor<T>, index: ReceiptIndex) -> DispatchResult
pub fn privatize(origin: OriginFor<T>, index: ReceiptIndex) -> DispatchResult
Make a communal receipt private and burn fungible counterparts from its owner.
source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
sourcepub fn account_id() -> T::AccountId
pub fn account_id() -> T::AccountId
The account ID of the reserves.
This actually does computation. If you need to keep using it, then make sure you cache the value and only call this once.
sourcepub fn issuance(
) -> IssuanceInfo<<<T as Config>::Currency as FunInspect<<T as Config>::AccountId>>::Balance>
pub fn issuance( ) -> IssuanceInfo<<<T as Config>::Currency as FunInspect<<T as Config>::AccountId>>::Balance>
Returns information on the issuance within the system.
sourcepub fn issuance_with(
our_account: &T::AccountId,
summary: &SummaryRecord<BlockNumberFor<T>, <<T as Config>::Currency as FunInspect<<T as Config>::AccountId>>::Balance>
) -> IssuanceInfo<<<T as Config>::Currency as FunInspect<<T as Config>::AccountId>>::Balance>
pub fn issuance_with( our_account: &T::AccountId, summary: &SummaryRecord<BlockNumberFor<T>, <<T as Config>::Currency as FunInspect<<T as Config>::AccountId>>::Balance> ) -> IssuanceInfo<<<T as Config>::Currency as FunInspect<<T as Config>::AccountId>>::Balance>
Returns information on the issuance within the system
This function is equivalent to issuance
, except that it accepts arguments rather than
queries state. If the arguments are already known, then this may be slightly more
performant.
our_account
: The value returned bySelf::account_id()
.summary
: The value returned bySummary::<T>::get()
.
Trait Implementations§
source§impl<T> Benchmarking for Pallet<T>where
T: Config + Config,
impl<T> Benchmarking for Pallet<T>where T: Config + Config,
source§fn benchmarks(extra: bool) -> Vec<BenchmarkMetadata>
fn benchmarks(extra: bool) -> Vec<BenchmarkMetadata>
source§fn run_benchmark(
extrinsic: &[u8],
c: &[(BenchmarkParameter, u32)],
whitelist: &[TrackedStorageKey],
verify: bool,
internal_repeats: u32
) -> Result<Vec<BenchmarkResult>, BenchmarkError>
fn run_benchmark( extrinsic: &[u8], c: &[(BenchmarkParameter, u32)], whitelist: &[TrackedStorageKey], verify: bool, internal_repeats: u32 ) -> Result<Vec<BenchmarkResult>, BenchmarkError>
source§impl<T: Config> GetStorageVersion for Pallet<T>
impl<T: Config> GetStorageVersion for Pallet<T>
source§fn current_storage_version() -> Self::CurrentStorageVersion
fn current_storage_version() -> Self::CurrentStorageVersion
source§fn on_chain_storage_version() -> StorageVersion
fn on_chain_storage_version() -> StorageVersion
source§impl<T: Config> Hooks<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> Hooks<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
source§fn on_initialize(n: BlockNumberFor<T>) -> Weight
fn on_initialize(n: BlockNumberFor<T>) -> Weight
source§fn integrity_test()
fn integrity_test()
source§fn on_finalize(_n: BlockNumber)
fn on_finalize(_n: BlockNumber)
source§fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight
fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight
Hooks::on_finalize
). Read moresource§fn on_runtime_upgrade() -> Weight
fn on_runtime_upgrade() -> Weight
source§fn try_state(_n: BlockNumber) -> Result<(), DispatchError>
fn try_state(_n: BlockNumber) -> Result<(), DispatchError>
source§fn pre_upgrade() -> Result<Vec<u8, Global>, DispatchError>
fn pre_upgrade() -> Result<Vec<u8, Global>, DispatchError>
source§fn post_upgrade(_state: Vec<u8, Global>) -> Result<(), DispatchError>
fn post_upgrade(_state: Vec<u8, Global>) -> Result<(), DispatchError>
source§fn offchain_worker(_n: BlockNumber)
fn offchain_worker(_n: BlockNumber)
source§impl<T: Config> Inspect<<T as Config>::AccountId> for Pallet<T>
impl<T: Config> Inspect<<T as Config>::AccountId> for Pallet<T>
source§fn owner(item: &ReceiptIndex) -> Option<T::AccountId>
fn owner(item: &ReceiptIndex) -> Option<T::AccountId>
item
, or None
if the item doesn’t exist or has no
owner.source§impl<T: Config> IntegrityTest for Pallet<T>
impl<T: Config> IntegrityTest for Pallet<T>
source§impl<T: Config> OffchainWorker<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OffchainWorker<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
source§fn offchain_worker(n: BlockNumberFor<T>)
fn offchain_worker(n: BlockNumberFor<T>)
source§impl<T: Config> OnFinalize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OnFinalize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
source§fn on_finalize(n: BlockNumberFor<T>)
fn on_finalize(n: BlockNumberFor<T>)
Hooks::on_finalize
.source§impl<T: Config> OnGenesis for Pallet<T>
impl<T: Config> OnGenesis for Pallet<T>
source§fn on_genesis()
fn on_genesis()
source§impl<T: Config> OnIdle<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OnIdle<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
source§fn on_idle(n: BlockNumberFor<T>, remaining_weight: Weight) -> Weight
fn on_idle(n: BlockNumberFor<T>, remaining_weight: Weight) -> Weight
Hooks::on_idle
.source§impl<T: Config> OnInitialize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OnInitialize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
source§fn on_initialize(n: BlockNumberFor<T>) -> Weight
fn on_initialize(n: BlockNumberFor<T>) -> Weight
Hooks::on_initialize
.source§impl<T: Config> OnRuntimeUpgrade for Pallet<T>
impl<T: Config> OnRuntimeUpgrade for Pallet<T>
source§fn on_runtime_upgrade() -> Weight
fn on_runtime_upgrade() -> Weight
source§fn pre_upgrade() -> Result<Vec<u8>, TryRuntimeError>
fn pre_upgrade() -> Result<Vec<u8>, TryRuntimeError>
Hooks::pre_upgrade
.source§fn post_upgrade(state: Vec<u8>) -> Result<(), TryRuntimeError>
fn post_upgrade(state: Vec<u8>) -> Result<(), TryRuntimeError>
Hooks::post_upgrade
.source§fn try_on_runtime_upgrade(checks: bool) -> Result<Weight, DispatchError>
fn try_on_runtime_upgrade(checks: bool) -> Result<Weight, DispatchError>
pre_upgrade
->
on_runtime_upgrade
-> post_upgrade
hooks for a migration. Read moresource§impl<T: Config> PalletInfoAccess for Pallet<T>
impl<T: Config> PalletInfoAccess for Pallet<T>
source§fn module_name() -> &'static str
fn module_name() -> &'static str
source§fn crate_version() -> CrateVersion
fn crate_version() -> CrateVersion
source§impl<T: Config> PalletsInfoAccess for Pallet<T>
impl<T: Config> PalletsInfoAccess for Pallet<T>
source§impl<T> PartialEq<Pallet<T>> for Pallet<T>
impl<T> PartialEq<Pallet<T>> for Pallet<T>
source§impl<T: Config> StorageInfoTrait for Pallet<T>
impl<T: Config> StorageInfoTrait for Pallet<T>
fn storage_info() -> Vec<StorageInfo>
source§impl<T: Config> Transfer<<T as Config>::AccountId> for Pallet<T>
impl<T: Config> Transfer<<T as Config>::AccountId> for Pallet<T>
source§fn transfer(index: &ReceiptIndex, dest: &T::AccountId) -> DispatchResult
fn transfer(index: &ReceiptIndex, dest: &T::AccountId) -> DispatchResult
item
into destination
account.source§impl<T: Config> TryState<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> TryState<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
source§fn try_state(
n: BlockNumberFor<T>,
_s: TryStateSelect
) -> Result<(), TryRuntimeError>
fn try_state( n: BlockNumberFor<T>, _s: TryStateSelect ) -> Result<(), TryRuntimeError>
source§impl<T: Config> WhitelistedStorageKeys for Pallet<T>
impl<T: Config> WhitelistedStorageKeys for Pallet<T>
source§fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>
fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>
Vec<TrackedStorageKey>
indicating the storage keys that
should be whitelisted during benchmarking. This means that those keys
will be excluded from the benchmarking performance calculation.impl<T> Eq for Pallet<T>
Auto Trait Implementations§
impl<T> RefUnwindSafe for Pallet<T>where T: RefUnwindSafe,
impl<T> Send for Pallet<T>where T: Send,
impl<T> Sync for Pallet<T>where T: Sync,
impl<T> Unpin for Pallet<T>where T: Unpin,
impl<T> UnwindSafe for Pallet<T>where T: UnwindSafe,
Blanket Implementations§
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
source§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>,
§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>,
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.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
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
T
.