Trait reth::api::engine::EngineTypes

source ·
pub trait EngineTypes: PayloadTypes + DeserializeOwned + Serialize{
    type ExecutionPayloadV1: DeserializeOwned + Serialize + Clone + Unpin + Send + Sync + 'static;
    type ExecutionPayloadV2: DeserializeOwned + Serialize + Clone + Unpin + Send + Sync + 'static;
    type ExecutionPayloadV3: DeserializeOwned + Serialize + Clone + Unpin + Send + Sync + 'static;
    type ExecutionPayloadV4: DeserializeOwned + Serialize + Clone + Unpin + Send + Sync + 'static;

    // Required method
    fn validate_version_specific_fields(
        chain_spec: &ChainSpec,
        version: EngineApiMessageVersion,
        payload_or_attrs: PayloadOrAttributes<'_, Self::PayloadAttributes>,
    ) -> Result<(), EngineObjectValidationError>;
}
Expand description

This type defines the versioned types of the engine API.

This includes the execution payload types and payload attributes that are used to trigger a payload job. Hence this trait is also PayloadTypes.

Required Associated Types§

source

type ExecutionPayloadV1: DeserializeOwned + Serialize + Clone + Unpin + Send + Sync + 'static

Execution Payload V1 type.

source

type ExecutionPayloadV2: DeserializeOwned + Serialize + Clone + Unpin + Send + Sync + 'static

Execution Payload V2 type.

source

type ExecutionPayloadV3: DeserializeOwned + Serialize + Clone + Unpin + Send + Sync + 'static

Execution Payload V3 type.

source

type ExecutionPayloadV4: DeserializeOwned + Serialize + Clone + Unpin + Send + Sync + 'static

Execution Payload V4 type.

Required Methods§

source

fn validate_version_specific_fields( chain_spec: &ChainSpec, version: EngineApiMessageVersion, payload_or_attrs: PayloadOrAttributes<'_, Self::PayloadAttributes>, ) -> Result<(), EngineObjectValidationError>

Validates the presence or exclusion of fork-specific fields based on the payload attributes and the message version.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl EngineTypes for EthEngineTypes

source§

impl EngineTypes for OptimismEngineTypes

Implementors§