Struct phron_finality::session_map::AuthorityProviderImpl
source · pub struct AuthorityProviderImpl<C, B, BE, RA>where
C: ClientForPhron<B, BE> + Send + Sync + 'static,
C::Api: PhronSessionApi<B> + AuraApi<B, AuraId>,
B: Block<Hash = BlockHash>,
BE: Backend<B> + 'static,
RA: RuntimeApi,{
client: Arc<C>,
api: RA,
_phantom: PhantomData<(B, BE)>,
}
Expand description
Default implementation of authority provider trait.
If state pruning is on and set to n
, will no longer be able to
answer for num < finalized_number - n
.
Fields§
§client: Arc<C>
§api: RA
§_phantom: PhantomData<(B, BE)>
Implementations§
source§impl<C, B, BE, RA> AuthorityProviderImpl<C, B, BE, RA>where
C: ClientForPhron<B, BE> + Send + Sync + 'static,
C::Api: PhronSessionApi<B> + AuraApi<B, AuraId>,
B: Block<Hash = BlockHash>,
B::Header: Header<Number = BlockNumber>,
BE: Backend<B> + 'static,
RA: RuntimeApi,
impl<C, B, BE, RA> AuthorityProviderImpl<C, B, BE, RA>where
C: ClientForPhron<B, BE> + Send + Sync + 'static,
C::Api: PhronSessionApi<B> + AuraApi<B, AuraId>,
B: Block<Hash = BlockHash>,
B::Header: Header<Number = BlockNumber>,
BE: Backend<B> + 'static,
RA: RuntimeApi,
pub fn new(client: Arc<C>, api: RA) -> Self
fn block_hash(&self, block: BlockNumber) -> Option<BlockHash>
Trait Implementations§
source§impl<C, B, BE, RA> AuthorityProvider for AuthorityProviderImpl<C, B, BE, RA>where
C: ClientForPhron<B, BE> + Send + Sync + 'static,
C::Api: PhronSessionApi<B> + AuraApi<B, AuraId>,
B: Block<Hash = BlockHash>,
B::Header: Header<Number = BlockNumber>,
BE: Backend<B> + 'static,
RA: RuntimeApi,
impl<C, B, BE, RA> AuthorityProvider for AuthorityProviderImpl<C, B, BE, RA>where
C: ClientForPhron<B, BE> + Send + Sync + 'static,
C::Api: PhronSessionApi<B> + AuraApi<B, AuraId>,
B: Block<Hash = BlockHash>,
B::Header: Header<Number = BlockNumber>,
BE: Backend<B> + 'static,
RA: RuntimeApi,
returns list of Aura authorities for a given block number
returns list of next session Aura authorities for a given block number
returns authority data for block
returns next session authority data where current session is for block
Auto Trait Implementations§
impl<C, B, BE, RA> RefUnwindSafe for AuthorityProviderImpl<C, B, BE, RA>
impl<C, B, BE, RA> Send for AuthorityProviderImpl<C, B, BE, RA>where
RA: Send,
impl<C, B, BE, RA> Sync for AuthorityProviderImpl<C, B, BE, RA>where
RA: Sync,
impl<C, B, BE, RA> Unpin for AuthorityProviderImpl<C, B, BE, RA>
impl<C, B, BE, RA> UnwindSafe for AuthorityProviderImpl<C, B, BE, RA>
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<T> IsType<T> for T
impl<T> IsType<T> for T
§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
§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<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.