Struct SequencerActor

Source
pub struct SequencerActor<AB: AttributesBuilderConfig> {
    pub builder: AB,
    pub unsafe_head_rx: Receiver<L2BlockInfo>,
    pub admin_query_rx: Receiver<SequencerAdminQuery>,
}
Expand description

The SequencerActor is responsible for building L2 blocks on top of the current unsafe head and scheduling them to be signed and gossipped by the P2P layer, extending the L2 chain with new blocks.

Fields§

§builder: AB§unsafe_head_rx: Receiver<L2BlockInfo>

Watch channel to observe the unsafe head of the engine.

§admin_query_rx: Receiver<SequencerAdminQuery>

Channel to receive admin queries from the sequencer actor.

Implementations§

Source§

impl<AB: AttributesBuilderConfig> SequencerActor<AB>

Source

pub fn new(state: AB) -> (SequencerInboundData, Self)

Creates a new instance of the SequencerActor.

Trait Implementations§

Source§

impl<AB: Debug + AttributesBuilderConfig> Debug for SequencerActor<AB>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl NodeActor for SequencerActor<SequencerBuilder>

Source§

type Error = SequencerActorError

The error type for the actor.
Source§

type OutboundData = SequencerContext

The communication context used by the actor. These are the channels that the actor will use to send messages to other actors.
Source§

type Builder = SequencerBuilder

The configuration needed to build the actor.
Source§

type InboundData = SequencerInboundData

The inbound communication channels used by the actor. These are the channels that the actor will use to receive messages from other actors.
Source§

fn build(config: Self::Builder) -> (Self::InboundData, Self)

Builds the actor.
Source§

fn start<'async_trait>( self, ctx: Self::OutboundData, ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait,

Starts the actor.

Auto Trait Implementations§

§

impl<AB> Freeze for SequencerActor<AB>
where AB: Freeze,

§

impl<AB> !RefUnwindSafe for SequencerActor<AB>

§

impl<AB> Send for SequencerActor<AB>
where AB: Send,

§

impl<AB> Sync for SequencerActor<AB>
where AB: Sync,

§

impl<AB> Unpin for SequencerActor<AB>
where AB: Unpin,

§

impl<AB> !UnwindSafe for SequencerActor<AB>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSend for T
where T: Send,