pub trait ExecutionPayload:
    Serialize
    + DeserializeOwned
    + Debug
    + Clone
    + Send
    + Sync
    + 'static {
    // Required methods
    fn parent_hash(&self) -> FixedBytes<32>;
    fn block_hash(&self) -> FixedBytes<32>;
    fn block_number(&self) -> u64;
    fn withdrawals(&self) -> Option<&Vec<Withdrawal>>;
    fn parent_beacon_block_root(&self) -> Option<FixedBytes<32>>;
    fn timestamp(&self) -> u64;
    fn gas_used(&self) -> u64;
    // Provided methods
    fn num_hash(&self) -> NumHash { ... }
    fn block_with_parent(&self) -> BlockWithParent { ... }
}Available on crate feature 
node-api only.Expand description
Represents the core data structure of an execution payload.
Contains all necessary information to execute and validate a block, including headers, transactions, and consensus fields. Provides a unified interface regardless of protocol version.
Required Methods§
Sourcefn parent_hash(&self) -> FixedBytes<32>
 
fn parent_hash(&self) -> FixedBytes<32>
Returns the hash of this block’s parent.
Sourcefn block_hash(&self) -> FixedBytes<32>
 
fn block_hash(&self) -> FixedBytes<32>
Returns this block’s hash.
Sourcefn block_number(&self) -> u64
 
fn block_number(&self) -> u64
Returns this block’s number (height).
Sourcefn withdrawals(&self) -> Option<&Vec<Withdrawal>>
 
fn withdrawals(&self) -> Option<&Vec<Withdrawal>>
Returns the withdrawals included in this payload.
Returns None for pre-Shanghai blocks.
Sourcefn parent_beacon_block_root(&self) -> Option<FixedBytes<32>>
 
fn parent_beacon_block_root(&self) -> Option<FixedBytes<32>>
Returns the beacon block root associated with this payload.
Returns None for pre-merge payloads.
Provided Methods§
Sourcefn block_with_parent(&self) -> BlockWithParent
 
fn block_with_parent(&self) -> BlockWithParent
Returns a [BlockWithParent] for this block.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.