pub trait EngineApiValidWaitExt<N, T>: Send + Sync {
// Required methods
fn new_payload_v1_wait<'life0, 'async_trait>(
&'life0 self,
payload: ExecutionPayloadV1,
) -> Pin<Box<dyn Future<Output = TransportResult<PayloadStatus>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn new_payload_v2_wait<'life0, 'async_trait>(
&'life0 self,
payload: ExecutionPayloadInputV2,
) -> Pin<Box<dyn Future<Output = TransportResult<PayloadStatus>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn new_payload_v3_wait<'life0, 'async_trait>(
&'life0 self,
payload: ExecutionPayloadV3,
versioned_hashes: Vec<B256>,
parent_beacon_block_root: B256,
) -> Pin<Box<dyn Future<Output = TransportResult<PayloadStatus>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn fork_choice_updated_v1_wait<'life0, 'async_trait>(
&'life0 self,
fork_choice_state: ForkchoiceState,
payload_attributes: Option<PayloadAttributes>,
) -> Pin<Box<dyn Future<Output = TransportResult<ForkchoiceUpdated>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn fork_choice_updated_v2_wait<'life0, 'async_trait>(
&'life0 self,
fork_choice_state: ForkchoiceState,
payload_attributes: Option<PayloadAttributes>,
) -> Pin<Box<dyn Future<Output = TransportResult<ForkchoiceUpdated>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn fork_choice_updated_v3_wait<'life0, 'async_trait>(
&'life0 self,
fork_choice_state: ForkchoiceState,
payload_attributes: Option<PayloadAttributes>,
) -> Pin<Box<dyn Future<Output = TransportResult<ForkchoiceUpdated>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}
Expand description
An extension trait for providers that implement the engine API, to wait for a VALID response.
Required Methods§
Sourcefn new_payload_v1_wait<'life0, 'async_trait>(
&'life0 self,
payload: ExecutionPayloadV1,
) -> Pin<Box<dyn Future<Output = TransportResult<PayloadStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn new_payload_v1_wait<'life0, 'async_trait>(
&'life0 self,
payload: ExecutionPayloadV1,
) -> Pin<Box<dyn Future<Output = TransportResult<PayloadStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Calls engine_newPayloadV1
with the given [ExecutionPayloadV1], and waits until the
response is VALID.
Sourcefn new_payload_v2_wait<'life0, 'async_trait>(
&'life0 self,
payload: ExecutionPayloadInputV2,
) -> Pin<Box<dyn Future<Output = TransportResult<PayloadStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn new_payload_v2_wait<'life0, 'async_trait>(
&'life0 self,
payload: ExecutionPayloadInputV2,
) -> Pin<Box<dyn Future<Output = TransportResult<PayloadStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Calls engine_newPayloadV2
with the given [ExecutionPayloadInputV2], and waits until the
response is VALID.
Sourcefn new_payload_v3_wait<'life0, 'async_trait>(
&'life0 self,
payload: ExecutionPayloadV3,
versioned_hashes: Vec<B256>,
parent_beacon_block_root: B256,
) -> Pin<Box<dyn Future<Output = TransportResult<PayloadStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn new_payload_v3_wait<'life0, 'async_trait>(
&'life0 self,
payload: ExecutionPayloadV3,
versioned_hashes: Vec<B256>,
parent_beacon_block_root: B256,
) -> Pin<Box<dyn Future<Output = TransportResult<PayloadStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Calls engine_newPayloadV3
with the given [ExecutionPayloadV3], parent beacon block root,
and versioned hashes, and waits until the response is VALID.
Sourcefn fork_choice_updated_v1_wait<'life0, 'async_trait>(
&'life0 self,
fork_choice_state: ForkchoiceState,
payload_attributes: Option<PayloadAttributes>,
) -> Pin<Box<dyn Future<Output = TransportResult<ForkchoiceUpdated>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn fork_choice_updated_v1_wait<'life0, 'async_trait>(
&'life0 self,
fork_choice_state: ForkchoiceState,
payload_attributes: Option<PayloadAttributes>,
) -> Pin<Box<dyn Future<Output = TransportResult<ForkchoiceUpdated>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Calls engine_forkChoiceUpdatedV1
with the given [ForkchoiceState] and optional
[PayloadAttributes], and waits until the response is VALID.
Sourcefn fork_choice_updated_v2_wait<'life0, 'async_trait>(
&'life0 self,
fork_choice_state: ForkchoiceState,
payload_attributes: Option<PayloadAttributes>,
) -> Pin<Box<dyn Future<Output = TransportResult<ForkchoiceUpdated>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn fork_choice_updated_v2_wait<'life0, 'async_trait>(
&'life0 self,
fork_choice_state: ForkchoiceState,
payload_attributes: Option<PayloadAttributes>,
) -> Pin<Box<dyn Future<Output = TransportResult<ForkchoiceUpdated>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Calls engine_forkChoiceUpdatedV2
with the given [ForkchoiceState] and optional
[PayloadAttributes], and waits until the response is VALID.
Sourcefn fork_choice_updated_v3_wait<'life0, 'async_trait>(
&'life0 self,
fork_choice_state: ForkchoiceState,
payload_attributes: Option<PayloadAttributes>,
) -> Pin<Box<dyn Future<Output = TransportResult<ForkchoiceUpdated>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn fork_choice_updated_v3_wait<'life0, 'async_trait>(
&'life0 self,
fork_choice_state: ForkchoiceState,
payload_attributes: Option<PayloadAttributes>,
) -> Pin<Box<dyn Future<Output = TransportResult<ForkchoiceUpdated>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Calls engine_forkChoiceUpdatedV3
with the given [ForkchoiceState] and optional
[PayloadAttributes], and waits until the response is VALID.