pub struct HeadEvent {
pub slot: u64,
pub block: B256,
pub state: B256,
pub epoch_transition: bool,
pub previous_duty_dependent_root: B256,
pub current_duty_dependent_root: B256,
pub execution_optimistic: bool,
}
Expand description
Event for the Head
topic of the beacon API node event stream.
The node has finished processing, resulting in a new head. previous_duty_dependent_root
is
get_block_root_at_slot(state, compute_start_slot_at_epoch(epoch - 1) - 1)
and
current_duty_dependent_root
is get_block_root_at_slot(state, compute_start_slot_at_epoch(epoch) - 1)
. Both dependent roots use the genesis block root in the
case of underflow.
Fields§
§slot: u64
The slot number of the event, serialized as a string.
block: B256
The block associated with the event.
state: B256
The state associated with the event.
epoch_transition: bool
A flag indicating if an epoch transition occurred.
previous_duty_dependent_root: B256
The previous duty dependent root.
current_duty_dependent_root: B256
The current duty dependent root.
execution_optimistic: bool
A flag indicating optimistic execution.
Trait Implementations§
source§impl<'de> Deserialize<'de> for HeadEvent
impl<'de> Deserialize<'de> for HeadEvent
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for HeadEvent
impl StructuralPartialEq for HeadEvent
Auto Trait Implementations§
impl Freeze for HeadEvent
impl RefUnwindSafe for HeadEvent
impl Send for HeadEvent
impl Sync for HeadEvent
impl Unpin for HeadEvent
impl UnwindSafe for HeadEvent
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
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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>
Converts
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>
Converts
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 more