Expand description
Re-exported payload related types
Modules§
- noop
- A payload builder service task that does nothing.
- test_
utils test-utils - Utils for testing purposes.
Structs§
- Build
NewPayload - A request to build a new payload.
- Built
Payload Executed Block - Represents an executed block for payload building purposes.
- EthBuilt
Payload - Contains the built payload.
- Ethereum
Execution Payload Validator - Execution payload validator.
- Payload
Builder Handle - A communication channel to the
PayloadBuilderService. - Payload
Builder Service - A service that manages payload building tasks.
- Payload
Id - And 8-byte identifier for an execution payload.
- Payload
Store - A communication channel to the
PayloadBuilderServicethat can retrieve payloads.
Enums§
- Blob
Sidecars - An enum representing blob transaction sidecars belonging to
EthBuiltPayload. - Engine
ApiMessage Version - The version of Engine API message.
- Engine
Object Validation Error - Thrown when the payload or attributes are known to be invalid before processing.
- Invalid
Payload Attributes Error - Thrown when validating the correctness of a payloadattributes object.
- Keep
Payload JobAlive - Whether the payload job should be kept alive or terminated after the payload was requested by the CL.
- Message
Validation Kind - A type that represents whether or not we are validating a payload or payload attributes.
- NewPayload
Error - Error validating payload received over
newPayloadAPI. - Payload
Builder Error - Possible error variants during payload building.
- Payload
Kind - Determines how we should choose the payload to return.
- Payload
OrAttributes - A unified type for handling both execution payloads and payload attributes.
- Payload
Service Command - Message type for the
PayloadBuilderService. - Version
Specific Validation Error - Thrown when validating an execution payload OR payload attributes fails due to:
Traits§
- Build
Next Env - Trait to build the EVM environment for the next block from the given payload attributes.
- Built
Payload - Represents a successfully built execution payload (block).
- Execution
Payload - Represents the core data structure of an execution payload.
- Payload
Attributes - Basic attributes required to initiate payload construction.
- Payload
Attributes Builder - Factory trait for creating payload attributes.
- Payload
Job - A type that can build a payload.
- Payload
JobGenerator - A type that knows how to create new jobs for creating payloads.
- Payload
Types - Core trait that defines the associated types for working with execution payloads.
Functions§
- payload_
id - Generates the payload id for the configured payload from the
PayloadAttributes. - validate_
block_ access_ list_ presence - Validates the presence of the
block access listsfield according to the payload timestamp. After Amsterdam, block access list field must be Some. Before Amsterdam, block access list field must be None; - validate_
execution_ requests - Validates that execution requests are valid according to Engine API specification.
- validate_
parent_ beacon_ block_ root_ presence - Validate the presence of the
parentBeaconBlockRootfield according to the given timestamp. This method is meant to be used with either apayloadAttributesfield or a full payload, with theengine_forkchoiceUpdatedandengine_newPayloadmethods respectively. - validate_
payload_ timestamp - Validates the timestamp depending on the version called:
- validate_
slot_ number_ presence - Validates the presence of the
slot numberfield according to the payload timestamp. After Amsterdam, slot number field must be Some. Before Amsterdam, slot number field must be None; - validate_
version_ specific_ fields - Validates the presence or exclusion of fork-specific fields based on the ethereum execution payload, or payload attributes, and the message version.
- validate_
withdrawals_ presence - Validates the presence of the
withdrawalsfield according to the payload timestamp. After Shanghai, withdrawals field must be Some. Before Shanghai, withdrawals field must be None;