pub struct BuildTask {
pub engine: Arc<EngineClient>,
pub cfg: Arc<RollupConfig>,
pub attributes: OpAttributesWithParent,
pub is_attributes_derived: bool,
pub payload_tx: Option<Sender<OpExecutionPayloadEnvelope>>,
}Expand description
The BuildTask is responsible for building new blocks and importing them via the engine API.
Fields§
§engine: Arc<EngineClient>The engine API client.
cfg: Arc<RollupConfig>The RollupConfig.
attributes: OpAttributesWithParentThe OpAttributesWithParent to instruct the execution layer to build.
is_attributes_derived: boolWhether or not the payload was derived, or created by the sequencer.
payload_tx: Option<Sender<OpExecutionPayloadEnvelope>>An optional channel to send the built OpExecutionPayloadEnvelope to, after the block
has been built, imported, and canonicalized.
Implementations§
Source§impl BuildTask
impl BuildTask
Sourcepub const fn new(
engine: Arc<EngineClient>,
cfg: Arc<RollupConfig>,
attributes: OpAttributesWithParent,
is_attributes_derived: bool,
payload_tx: Option<Sender<OpExecutionPayloadEnvelope>>,
) -> Self
pub const fn new( engine: Arc<EngineClient>, cfg: Arc<RollupConfig>, attributes: OpAttributesWithParent, is_attributes_derived: bool, payload_tx: Option<Sender<OpExecutionPayloadEnvelope>>, ) -> Self
Creates a new block building task.
Trait Implementations§
Source§impl EngineTaskExt for BuildTask
impl EngineTaskExt for BuildTask
Source§type Error = BuildTaskError
type Error = BuildTaskError
The error type of the task.
Source§fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
state: &'life1 mut EngineState,
) -> Pin<Box<dyn Future<Output = Result<(), BuildTaskError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
state: &'life1 mut EngineState,
) -> Pin<Box<dyn Future<Output = Result<(), BuildTaskError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Executes the task, taking a shared lock on the engine state and
self.Auto Trait Implementations§
impl Freeze for BuildTask
impl !RefUnwindSafe for BuildTask
impl Send for BuildTask
impl Sync for BuildTask
impl Unpin for BuildTask
impl !UnwindSafe for BuildTask
Blanket Implementations§
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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