pub struct ExecutionPayloadBodyV2 {
pub transactions: Vec<Bytes>,
pub withdrawals: Option<Vec<Withdrawal>>,
pub block_access_list: Option<Bytes>,
}Expand description
This structure contains a body of an execution payload (V2).
V2 extends V1 with the blockAccessList field introduced in EIP-7928.
See also: https://eips.ethereum.org/EIPS/eip-7928
Fields§
§transactions: Vec<Bytes>Enveloped encoded transactions.
withdrawals: Option<Vec<Withdrawal>>All withdrawals in the block.
Will always be None if pre shanghai.
block_access_list: Option<Bytes>The RLP-encoded block access list.
Will be None for pre-Amsterdam blocks or when data has been pruned.
Implementations§
Source§impl ExecutionPayloadBodyV2
impl ExecutionPayloadBodyV2
Sourcepub fn new<'a, T>(
withdrawals: Option<Withdrawals>,
transactions: impl IntoIterator<Item = &'a T>,
block_access_list: Option<Bytes>,
) -> Selfwhere
T: Encodable2718 + 'a,
pub fn new<'a, T>(
withdrawals: Option<Withdrawals>,
transactions: impl IntoIterator<Item = &'a T>,
block_access_list: Option<Bytes>,
) -> Selfwhere
T: Encodable2718 + 'a,
Creates an ExecutionPayloadBodyV2 from the given withdrawals, transactions, and block
access list.
Sourcepub fn from_block<T: Encodable2718, H>(
block: Block<T, H>,
block_access_list: Option<Bytes>,
) -> Self
pub fn from_block<T: Encodable2718, H>( block: Block<T, H>, block_access_list: Option<Bytes>, ) -> Self
Converts a alloy_consensus::Block into an execution payload body, with an optional
block access list.
Trait Implementations§
Source§impl<'arbitrary> Arbitrary<'arbitrary> for ExecutionPayloadBodyV2
Available on crate features arbitrary only.
impl<'arbitrary> Arbitrary<'arbitrary> for ExecutionPayloadBodyV2
arbitrary only.Source§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
Self from the given unstructured data. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
Self from the entirety of the given
unstructured data. Read moreSource§fn size_hint(depth: usize) -> (usize, Option<usize>)
fn size_hint(depth: usize) -> (usize, Option<usize>)
Unstructured this type
needs to construct itself. Read moreSource§fn try_size_hint(
depth: usize,
) -> Result<(usize, Option<usize>), MaxRecursionReached>
fn try_size_hint( depth: usize, ) -> Result<(usize, Option<usize>), MaxRecursionReached>
Unstructured this type
needs to construct itself. Read moreSource§impl Clone for ExecutionPayloadBodyV2
impl Clone for ExecutionPayloadBodyV2
Source§fn clone(&self) -> ExecutionPayloadBodyV2
fn clone(&self) -> ExecutionPayloadBodyV2
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ExecutionPayloadBodyV2
impl Debug for ExecutionPayloadBodyV2
Source§impl Decode for ExecutionPayloadBodyV2
Available on crate feature ssz only.
impl Decode for ExecutionPayloadBodyV2
ssz only.Source§fn is_ssz_fixed_len() -> bool
fn is_ssz_fixed_len() -> bool
true if this object has a fixed-length. Read moreSource§fn ssz_fixed_len() -> usize
fn ssz_fixed_len() -> usize
Source§fn from_ssz_bytes(__bytes: &[u8]) -> Result<Self, DecodeError>
fn from_ssz_bytes(__bytes: &[u8]) -> Result<Self, DecodeError>
Source§impl<'de> Deserialize<'de> for ExecutionPayloadBodyV2
Available on crate feature serde only.
impl<'de> Deserialize<'de> for ExecutionPayloadBodyV2
serde only.Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Encode for ExecutionPayloadBodyV2
Available on crate feature ssz only.
impl Encode for ExecutionPayloadBodyV2
ssz only.Source§fn is_ssz_fixed_len() -> bool
fn is_ssz_fixed_len() -> bool
true if this object has a fixed-length. Read moreSource§fn ssz_fixed_len() -> usize
fn ssz_fixed_len() -> usize
Source§fn ssz_bytes_len(&self) -> usize
fn ssz_bytes_len(&self) -> usize
self is serialized. Read moreimpl Eq for ExecutionPayloadBodyV2
Source§impl From<ExecutionPayloadBodyV1> for ExecutionPayloadBodyV2
impl From<ExecutionPayloadBodyV1> for ExecutionPayloadBodyV2
Source§fn from(v1: ExecutionPayloadBodyV1) -> Self
fn from(v1: ExecutionPayloadBodyV1) -> Self
Source§impl From<ExecutionPayloadBodyV2> for ExecutionPayloadBodyV1
impl From<ExecutionPayloadBodyV2> for ExecutionPayloadBodyV1
Source§fn from(v2: ExecutionPayloadBodyV2) -> Self
fn from(v2: ExecutionPayloadBodyV2) -> Self
Source§impl PartialEq for ExecutionPayloadBodyV2
impl PartialEq for ExecutionPayloadBodyV2
Source§impl Serialize for ExecutionPayloadBodyV2
Available on crate feature serde only.
impl Serialize for ExecutionPayloadBodyV2
serde only.impl StructuralPartialEq for ExecutionPayloadBodyV2
Auto Trait Implementations§
impl !Freeze for ExecutionPayloadBodyV2
impl RefUnwindSafe for ExecutionPayloadBodyV2
impl Send for ExecutionPayloadBodyV2
impl Sync for ExecutionPayloadBodyV2
impl Unpin for ExecutionPayloadBodyV2
impl UnsafeUnpin for ExecutionPayloadBodyV2
impl UnwindSafe for ExecutionPayloadBodyV2
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> ⓘ
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> ⓘ
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 moreSource§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
Source§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 80 bytes