[−][src]Struct pallet_staking::ErasValidatorPrefs
Similar to ErasStakers, this holds the preferences of validators.
This is keyed first by the era index to allow bulk deletion and then the stash account.
Is it removed after HISTORY_DEPTH eras.
Trait Implementations
impl<T: Trait> StorageDoubleMap<u32, <T as Trait>::AccountId, ValidatorPrefs> for ErasValidatorPrefs<T>[src]
type Query = ValidatorPrefs
The type that get/take returns.
type Hasher1 = Twox64Concat
Hasher for the first key.
type Hasher2 = Twox64Concat
Hasher for the second key.
fn module_prefix() -> &'static [u8][src]
fn storage_prefix() -> &'static [u8][src]
fn from_optional_value_to_query(v: Option<ValidatorPrefs>) -> Self::Query[src]
fn from_query_to_optional_value(v: Self::Query) -> Option<ValidatorPrefs>[src]
fn prefix_hash() -> Vec<u8>[src]
fn storage_double_map_final_key1<KArg1>(k1: KArg1) -> Vec<u8> where
KArg1: EncodeLike<K1>, [src]
KArg1: EncodeLike<K1>,
fn storage_double_map_final_key<KArg1, KArg2>(k1: KArg1, k2: KArg2) -> Vec<u8> where
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>, [src]
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
impl<T: Trait> StoragePrefixedMap<ValidatorPrefs> for ErasValidatorPrefs<T>[src]
fn module_prefix() -> &'static [u8][src]
fn storage_prefix() -> &'static [u8][src]
fn final_prefix() -> [u8; 32][src]
fn remove_all()[src]
fn iter_values() -> PrefixIterator<Value>[src]
fn translate_values<OldValue, F>(f: F) where
F: Fn(OldValue) -> Option<Value>,
OldValue: Decode, [src]
F: Fn(OldValue) -> Option<Value>,
OldValue: Decode,
Auto Trait Implementations
impl<T> RefUnwindSafe for ErasValidatorPrefs<T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T> Send for ErasValidatorPrefs<T> where
T: Send,
T: Send,
impl<T> Sync for ErasValidatorPrefs<T> where
T: Sync,
T: Sync,
impl<T> Unpin for ErasValidatorPrefs<T> where
T: Unpin,
T: Unpin,
impl<T> UnwindSafe for ErasValidatorPrefs<T> where
T: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> CheckedConversion for T[src]
fn checked_from<T>(t: T) -> Option<Self> where
Self: TryFrom<T>, [src]
Self: TryFrom<T>,
fn checked_into<T>(self) -> Option<T> where
Self: TryInto<T>, [src]
Self: TryInto<T>,
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> IsType<T> for T[src]
fn from_ref(t: &T) -> &T[src]
fn into_ref(&self) -> &T[src]
fn from_mut(t: &mut T) -> &mut T[src]
fn into_mut(&mut self) -> &mut T[src]
impl<T, Outer> IsWrappedBy<Outer> for T where
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
fn from_ref(outer: &Outer) -> &T
Get a reference to the inner from the outer.
fn from_mut(outer: &mut Outer) -> &mut T
Get a mutable reference to the inner from the outer.
impl<K1, K2, V, G> IterableStorageDoubleMap<K1, K2, V> for G where
G: StorageDoubleMap<K1, K2, V>,
K1: FullCodec,
K2: FullCodec,
V: FullCodec,
<G as StorageDoubleMap<K1, K2, V>>::Hasher1: ReversibleStorageHasher,
<G as StorageDoubleMap<K1, K2, V>>::Hasher2: ReversibleStorageHasher, [src]
G: StorageDoubleMap<K1, K2, V>,
K1: FullCodec,
K2: FullCodec,
V: FullCodec,
<G as StorageDoubleMap<K1, K2, V>>::Hasher1: ReversibleStorageHasher,
<G as StorageDoubleMap<K1, K2, V>>::Hasher2: ReversibleStorageHasher,
type PrefixIterator = PrefixIterator<(K2, V)>
The type that iterates over all (key2, value).
type Iterator = PrefixIterator<(K1, K2, V)>
The type that iterates over all (key1, key2, value).
fn iter_prefix(
k1: impl EncodeLike<K1>
) -> <G as IterableStorageDoubleMap<K1, K2, V>>::PrefixIterator[src]
k1: impl EncodeLike<K1>
) -> <G as IterableStorageDoubleMap<K1, K2, V>>::PrefixIterator
fn drain_prefix(
k1: impl EncodeLike<K1>
) -> <G as IterableStorageDoubleMap<K1, K2, V>>::PrefixIterator[src]
k1: impl EncodeLike<K1>
) -> <G as IterableStorageDoubleMap<K1, K2, V>>::PrefixIterator
fn iter() -> <G as IterableStorageDoubleMap<K1, K2, V>>::Iterator[src]
fn drain() -> <G as IterableStorageDoubleMap<K1, K2, V>>::Iterator[src]
fn translate<O, F>(f: F) where
F: Fn(K1, K2, O) -> Option<V>,
O: Decode, [src]
F: Fn(K1, K2, O) -> Option<V>,
O: Decode,
impl<T> MaybeRefUnwindSafe for T where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> SaturatedConversion for T
fn saturated_from<T>(t: T) -> Self where
Self: UniqueSaturatedFrom<T>,
Self: UniqueSaturatedFrom<T>,
fn saturated_into<T>(self) -> T where
Self: UniqueSaturatedInto<T>,
Self: UniqueSaturatedInto<T>,
impl<K1, K2, V, G> StorageDoubleMap<K1, K2, V> for G where
G: StorageDoubleMap<K1, K2, V>,
K1: FullEncode,
K2: FullEncode,
V: FullCodec, [src]
G: StorageDoubleMap<K1, K2, V>,
K1: FullEncode,
K2: FullEncode,
V: FullCodec,
type Query = <G as StorageDoubleMap<K1, K2, V>>::Query
The type that get/take returns.
fn hashed_key_for<KArg1, KArg2>(k1: KArg1, k2: KArg2) -> Vec<u8> where
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>, [src]
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
fn contains_key<KArg1, KArg2>(k1: KArg1, k2: KArg2) -> bool where
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>, [src]
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
fn get<KArg1, KArg2>(
k1: KArg1,
k2: KArg2
) -> <G as StorageDoubleMap<K1, K2, V>>::Query where
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>, [src]
k1: KArg1,
k2: KArg2
) -> <G as StorageDoubleMap<K1, K2, V>>::Query where
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
fn take<KArg1, KArg2>(
k1: KArg1,
k2: KArg2
) -> <G as StorageDoubleMap<K1, K2, V>>::Query where
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>, [src]
k1: KArg1,
k2: KArg2
) -> <G as StorageDoubleMap<K1, K2, V>>::Query where
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
fn swap<XKArg1, XKArg2, YKArg1, YKArg2>(
x_k1: XKArg1,
x_k2: XKArg2,
y_k1: YKArg1,
y_k2: YKArg2
) where
XKArg1: EncodeLike<K1>,
XKArg2: EncodeLike<K2>,
YKArg1: EncodeLike<K1>,
YKArg2: EncodeLike<K2>, [src]
x_k1: XKArg1,
x_k2: XKArg2,
y_k1: YKArg1,
y_k2: YKArg2
) where
XKArg1: EncodeLike<K1>,
XKArg2: EncodeLike<K2>,
YKArg1: EncodeLike<K1>,
YKArg2: EncodeLike<K2>,
fn insert<KArg1, KArg2, VArg>(k1: KArg1, k2: KArg2, val: VArg) where
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
VArg: EncodeLike<V>, [src]
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
VArg: EncodeLike<V>,
fn remove<KArg1, KArg2>(k1: KArg1, k2: KArg2) where
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>, [src]
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
fn remove_prefix<KArg1>(k1: KArg1) where
KArg1: EncodeLike<K1>, [src]
KArg1: EncodeLike<K1>,
fn iter_prefix_values<KArg1>(k1: KArg1) -> PrefixIterator<V> where
KArg1: EncodeLike<K1> + ?Sized, [src]
KArg1: EncodeLike<K1> + ?Sized,
fn mutate<KArg1, KArg2, R, F>(k1: KArg1, k2: KArg2, f: F) -> R where
F: FnOnce(&mut <G as StorageDoubleMap<K1, K2, V>>::Query) -> R,
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>, [src]
F: FnOnce(&mut <G as StorageDoubleMap<K1, K2, V>>::Query) -> R,
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
fn mutate_exists<KArg1, KArg2, R, F>(k1: KArg1, k2: KArg2, f: F) -> R where
F: FnOnce(&mut Option<V>) -> R,
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>, [src]
F: FnOnce(&mut Option<V>) -> R,
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
fn try_mutate<KArg1, KArg2, R, E, F>(k1: KArg1, k2: KArg2, f: F) -> Result<R, E> where
F: FnOnce(&mut <G as StorageDoubleMap<K1, K2, V>>::Query) -> Result<R, E>,
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>, [src]
F: FnOnce(&mut <G as StorageDoubleMap<K1, K2, V>>::Query) -> Result<R, E>,
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
fn try_mutate_exists<KArg1, KArg2, R, E, F>(
k1: KArg1,
k2: KArg2,
f: F
) -> Result<R, E> where
F: FnOnce(&mut Option<V>) -> Result<R, E>,
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>, [src]
k1: KArg1,
k2: KArg2,
f: F
) -> Result<R, E> where
F: FnOnce(&mut Option<V>) -> Result<R, E>,
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
fn append<Item, EncodeLikeItem, KArg1, KArg2>(
k1: KArg1,
k2: KArg2,
item: EncodeLikeItem
) where
EncodeLikeItem: EncodeLike<Item>,
Item: Encode,
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
V: StorageAppend<Item>, [src]
k1: KArg1,
k2: KArg2,
item: EncodeLikeItem
) where
EncodeLikeItem: EncodeLike<Item>,
Item: Encode,
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
V: StorageAppend<Item>,
fn migrate_keys<OldHasher1, OldHasher2, KeyArg1, KeyArg2>(
key1: KeyArg1,
key2: KeyArg2
) -> Option<V> where
KeyArg1: EncodeLike<K1>,
KeyArg2: EncodeLike<K2>,
OldHasher1: StorageHasher,
OldHasher2: StorageHasher, [src]
key1: KeyArg1,
key2: KeyArg2
) -> Option<V> where
KeyArg1: EncodeLike<K1>,
KeyArg2: EncodeLike<K2>,
OldHasher1: StorageHasher,
OldHasher2: StorageHasher,
fn decode_len<KArg1, KArg2>(key1: KArg1, key2: KArg2) -> Option<usize> where
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
V: StorageDecodeLength, [src]
KArg1: EncodeLike<K1>,
KArg2: EncodeLike<K2>,
V: StorageDecodeLength,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<S, T> UncheckedInto<T> for S where
T: UncheckedFrom<S>,
T: UncheckedFrom<S>,
fn unchecked_into(self) -> T
impl<T, S> UniqueSaturatedInto<T> for S where
S: TryInto<T>,
T: Bounded,
S: TryInto<T>,
T: Bounded,
fn unique_saturated_into(self) -> T
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,