Struct pallet_nomination_pools::PoolRoles
source · pub struct PoolRoles<AccountId> {
pub depositor: AccountId,
pub root: Option<AccountId>,
pub nominator: Option<AccountId>,
pub bouncer: Option<AccountId>,
}Expand description
Pool administration roles.
Any pool has a depositor, which can never change. But, all the other roles are optional, and
cannot exist. Note that if root is set to None, it basically means that the roles of this
pool can never change again (except via governance).
Fields§
§depositor: AccountIdCreates the pool and is the initial member. They can only leave the pool once all other members have left. Once they fully leave, the pool is destroyed.
root: Option<AccountId>Can change the nominator, bouncer, or itself and can perform any of the actions the nominator or bouncer can.
nominator: Option<AccountId>Can select which validators the pool nominates.
bouncer: Option<AccountId>Can change the pools state and kick members if the pool is blocked.
Trait Implementations§
source§impl<AccountId> Decode for PoolRoles<AccountId>where
AccountId: Decode,
Option<AccountId>: Decode,
impl<AccountId> Decode for PoolRoles<AccountId>where AccountId: Decode, Option<AccountId>: Decode,
source§fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>
Attempt to deserialise the value from input.
§fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>
) -> Result<DecodeFinished, Error>where
I: Input,
fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,
Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
§fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
fn skip<I>(input: &mut I) -> Result<(), Error>where I: Input,
Attempt to skip the encoded value from input. Read more
§fn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>
Returns the fixed encoded size of the type. Read more
source§impl<AccountId> Encode for PoolRoles<AccountId>where
AccountId: Encode,
Option<AccountId>: Encode,
impl<AccountId> Encode for PoolRoles<AccountId>where AccountId: Encode, Option<AccountId>: Encode,
source§fn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )
Convert self to a slice and append it to the destination.
§fn using_encoded<R, F>(&self, f: F) -> Rwhere
F: FnOnce(&[u8]) -> R,
fn using_encoded<R, F>(&self, f: F) -> Rwhere F: FnOnce(&[u8]) -> R,
Convert self to a slice and then invoke the given closure with it.
§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
Calculates the encoded size. Read more
source§impl<AccountId> MaxEncodedLen for PoolRoles<AccountId>where
AccountId: MaxEncodedLen,
Option<AccountId>: MaxEncodedLen,
impl<AccountId> MaxEncodedLen for PoolRoles<AccountId>where AccountId: MaxEncodedLen, Option<AccountId>: MaxEncodedLen,
source§fn max_encoded_len() -> usize
fn max_encoded_len() -> usize
Upper bound, in bytes, of the maximum encoded size of this item.
source§impl<AccountId: PartialEq> PartialEq<PoolRoles<AccountId>> for PoolRoles<AccountId>
impl<AccountId: PartialEq> PartialEq<PoolRoles<AccountId>> for PoolRoles<AccountId>
source§impl<AccountId> TypeInfo for PoolRoles<AccountId>where
AccountId: TypeInfo + 'static,
Option<AccountId>: TypeInfo + 'static,
impl<AccountId> TypeInfo for PoolRoles<AccountId>where AccountId: TypeInfo + 'static, Option<AccountId>: TypeInfo + 'static,
impl<AccountId> EncodeLike<PoolRoles<AccountId>> for PoolRoles<AccountId>where AccountId: Encode, Option<AccountId>: Encode,
impl<AccountId> StructuralPartialEq for PoolRoles<AccountId>
Auto Trait Implementations§
impl<AccountId> RefUnwindSafe for PoolRoles<AccountId>where AccountId: RefUnwindSafe,
impl<AccountId> Send for PoolRoles<AccountId>where AccountId: Send,
impl<AccountId> Sync for PoolRoles<AccountId>where AccountId: Sync,
impl<AccountId> Unpin for PoolRoles<AccountId>where AccountId: Unpin,
impl<AccountId> UnwindSafe for PoolRoles<AccountId>where AccountId: UnwindSafe,
Blanket Implementations§
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§impl<T> DecodeAll for Twhere
T: Decode,
impl<T> DecodeAll for Twhere T: Decode,
§fn decode_all(input: &mut &[u8]) -> Result<T, Error>
fn decode_all(input: &mut &[u8]) -> Result<T, Error>
Decode
Self and consume all of the given input data. Read more§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere T: Decode,
source§impl<T> Hashable for Twhere
T: Codec,
impl<T> Hashable for Twhere T: Codec,
fn blake2_128(&self) -> [u8; 16]
fn blake2_256(&self) -> [u8; 32]
fn blake2_128_concat(&self) -> Vec<u8, Global> ⓘ
fn twox_128(&self) -> [u8; 16]
fn twox_256(&self) -> [u8; 32]
fn twox_64_concat(&self) -> Vec<u8, Global> ⓘ
fn identity(&self) -> Vec<u8, Global> ⓘ
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> KeyedVec for Twhere
T: Codec,
impl<T> KeyedVec for Twhere T: Codec,
§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>,
Consume self to return an equivalent value of
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>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
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
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
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
The counterpart to
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
Consume self to return an equivalent value of
T.