Struct pallet_randomness_collective_flip::Module
source · [−]pub struct Module<T: Config>(_);
Implementations
sourceimpl<T: Config + 'static> Module<T>
impl<T: Config + 'static> Module<T>
sourcepub fn random_material() -> Vec<T::Hash>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
pub fn random_material() -> Vec<T::Hash>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
Series of block headers from the last 81 blocks that acts as random seed material. This
is arranged as a ring buffer with block_number % 81
being the index into the Vec
of
the oldest hash.
Trait Implementations
sourceimpl<T: Config> GetPalletVersion for Module<T>
impl<T: Config> GetPalletVersion for Module<T>
sourcefn current_version() -> PalletVersion
fn current_version() -> PalletVersion
Returns the current version of the pallet.
sourcefn storage_version() -> Option<PalletVersion>
fn storage_version() -> Option<PalletVersion>
Returns the version of the pallet that is stored in storage. Read more
sourceimpl<T: Config> IntegrityTest for Module<T>
impl<T: Config> IntegrityTest for Module<T>
sourcefn integrity_test()
fn integrity_test()
Run integrity test. Read more
sourceimpl<T: Config> ModuleErrorMetadata for Module<T>
impl<T: Config> ModuleErrorMetadata for Module<T>
sourceimpl<T: Config + Config> OffchainWorker<<T as Config>::BlockNumber> for Module<T>
impl<T: Config + Config> OffchainWorker<<T as Config>::BlockNumber> for Module<T>
sourcefn offchain_worker(_n: BlockNumber)
fn offchain_worker(_n: BlockNumber)
This function is being called after every block import (when fully synced). Read more
sourceimpl<T: Config + Config> OnFinalize<<T as Config>::BlockNumber> for Module<T>
impl<T: Config + Config> OnFinalize<<T as Config>::BlockNumber> for Module<T>
sourcefn on_finalize(_n: BlockNumber)
fn on_finalize(_n: BlockNumber)
The block is being finalized. Implement to have something happen. Read more
sourceimpl<T: Config> OnGenesis for Module<T>
impl<T: Config> OnGenesis for Module<T>
sourcefn on_genesis()
fn on_genesis()
Something that should happen at genesis.
sourceimpl<T: Config + Config> OnInitialize<<T as Config>::BlockNumber> for Module<T>
impl<T: Config + Config> OnInitialize<<T as Config>::BlockNumber> for Module<T>
sourcefn on_initialize(block_number: T::BlockNumber) -> Weight
fn on_initialize(block_number: T::BlockNumber) -> Weight
The block is being initialized. Implement to have something happen. Read more
sourceimpl<T: Config> OnRuntimeUpgrade for Module<T>
impl<T: Config> OnRuntimeUpgrade for Module<T>
sourcefn on_runtime_upgrade() -> Weight
fn on_runtime_upgrade() -> Weight
Perform a module upgrade. Read more
sourceimpl<T: Config> Randomness<<T as Config>::Hash> for Module<T>
impl<T: Config> Randomness<<T as Config>::Hash> for Module<T>
sourcefn random(subject: &[u8]) -> T::Hash
fn random(subject: &[u8]) -> T::Hash
This randomness uses a low-influence function, drawing upon the block hashes from the previous 81 blocks. Its result for any given subject will be known far in advance by anyone observing the chain. Any block producer has significant influence over their block hashes bounded only by their computational resources. Our low-influence function reduces the actual block producer’s influence over the randomness, but increases the influence of small colluding groups of recent block producers.
WARNING: Hashing the result of this function will remove any low-influence properties it has
and mean that all bits of the resulting value are entirely manipulatable by the author of
the parent block, who can determine the value of parent_hash
.
sourcefn random_seed() -> Output
fn random_seed() -> Output
Get the basic random seed. Read more
impl<T: Copy + Config> Copy for Module<T>
impl<T: Eq + Config> Eq for Module<T>
impl<T: Config> StructuralEq for Module<T>
impl<T: Config> StructuralPartialEq for Module<T>
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
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> CheckedConversion for T
impl<T> CheckedConversion for T
sourcefn checked_from<T>(t: T) -> Option<Self> where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self> where
Self: TryFrom<T>,
Convert from a value of T
into an equivalent instance of Option<Self>
. Read more
sourcefn checked_into<T>(self) -> Option<T> where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T> where
Self: TryInto<T>,
Consume self to return Some
equivalent value of Option<T>
. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T, Outer> IsWrappedBy<Outer> for T where
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for T where
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
sourceimpl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
sourcefn saturated_from<T>(t: T) -> Self where
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Self where
Self: UniqueSaturatedFrom<T>,
Convert from a value of T
into an equivalent instance of Self
. Read more
sourcefn saturated_into<T>(self) -> T where
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> T where
Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of T
. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
sourceimpl<S, T> UncheckedInto<T> for S where
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for S where
T: UncheckedFrom<S>,
sourcepub fn unchecked_into(self) -> T
pub fn unchecked_into(self) -> T
The counterpart to unchecked_from
.
sourceimpl<T, S> UniqueSaturatedInto<T> for S where
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for S where
T: Bounded,
S: TryInto<T>,
sourcepub fn unique_saturated_into(self) -> T
pub fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of T
.