Struct sov_modules_api::optimistic::Attestation
source · pub struct Attestation<Da, StateProof>where
Da: DaSpec,{
pub initial_state_root: [u8; 32],
pub da_block_hash: <Da as DaSpec>::SlotHash,
pub post_state_root: [u8; 32],
pub proof_of_bond: ProofOfBond<StateProof>,
}
Expand description
An attestation that a particular DA layer block transitioned the rollup state to some value
Fields§
§initial_state_root: [u8; 32]
The alleged state root before applying the contents of the da block
da_block_hash: <Da as DaSpec>::SlotHash
The hash of the block in which the transition occurred
post_state_root: [u8; 32]
The alleged post-state root
proof_of_bond: ProofOfBond<StateProof>
A proof that the attester was bonded at some point in time before the attestation is generated
Trait Implementations§
source§impl<Da, StateProof> BorshDeserialize for Attestation<Da, StateProof>where
Da: DaSpec,
[u8; 32]: BorshDeserialize,
<Da as DaSpec>::SlotHash: BorshDeserialize,
ProofOfBond<StateProof>: BorshDeserialize,
impl<Da, StateProof> BorshDeserialize for Attestation<Da, StateProof>where Da: DaSpec, [u8; 32]: BorshDeserialize, <Da as DaSpec>::SlotHash: BorshDeserialize, ProofOfBond<StateProof>: BorshDeserialize,
fn deserialize_reader<R>( reader: &mut R ) -> Result<Attestation<Da, StateProof>, Error>where R: Read,
source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes.
source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
Deserialize this instance from a slice of bytes.
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where R: Read,
source§impl<Da, StateProof> BorshSerialize for Attestation<Da, StateProof>where
Da: DaSpec,
[u8; 32]: BorshSerialize,
<Da as DaSpec>::SlotHash: BorshSerialize,
ProofOfBond<StateProof>: BorshSerialize,
impl<Da, StateProof> BorshSerialize for Attestation<Da, StateProof>where Da: DaSpec, [u8; 32]: BorshSerialize, <Da as DaSpec>::SlotHash: BorshSerialize, ProofOfBond<StateProof>: BorshSerialize,
source§impl<Da, StateProof> Clone for Attestation<Da, StateProof>where
Da: Clone + DaSpec,
StateProof: Clone,
<Da as DaSpec>::SlotHash: Clone,
impl<Da, StateProof> Clone for Attestation<Da, StateProof>where Da: Clone + DaSpec, StateProof: Clone, <Da as DaSpec>::SlotHash: Clone,
source§fn clone(&self) -> Attestation<Da, StateProof>
fn clone(&self) -> Attestation<Da, StateProof>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<Da, StateProof> Debug for Attestation<Da, StateProof>where
Da: Debug + DaSpec,
StateProof: Debug,
<Da as DaSpec>::SlotHash: Debug,
impl<Da, StateProof> Debug for Attestation<Da, StateProof>where Da: Debug + DaSpec, StateProof: Debug, <Da as DaSpec>::SlotHash: Debug,
source§impl<Da, StateProof> Default for Attestation<Da, StateProof>where
Da: Default + DaSpec,
StateProof: Default,
<Da as DaSpec>::SlotHash: Default,
impl<Da, StateProof> Default for Attestation<Da, StateProof>where Da: Default + DaSpec, StateProof: Default, <Da as DaSpec>::SlotHash: Default,
source§fn default() -> Attestation<Da, StateProof>
fn default() -> Attestation<Da, StateProof>
Returns the “default value” for a type. Read more
source§impl<'de, Da, StateProof> Deserialize<'de> for Attestation<Da, StateProof>where
Da: DaSpec,
StateProof: Deserialize<'de>,
<Da as DaSpec>::SlotHash: Deserialize<'de>,
impl<'de, Da, StateProof> Deserialize<'de> for Attestation<Da, StateProof>where Da: DaSpec, StateProof: Deserialize<'de>, <Da as DaSpec>::SlotHash: Deserialize<'de>,
source§fn deserialize<__D>(
__deserializer: __D
) -> Result<Attestation<Da, StateProof>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>( __deserializer: __D ) -> Result<Attestation<Da, StateProof>, <__D as Deserializer<'de>>::Error>where __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl<Da, StateProof> PartialEq<Attestation<Da, StateProof>> for Attestation<Da, StateProof>where
Da: PartialEq<Da> + DaSpec,
StateProof: PartialEq<StateProof>,
<Da as DaSpec>::SlotHash: PartialEq<<Da as DaSpec>::SlotHash>,
impl<Da, StateProof> PartialEq<Attestation<Da, StateProof>> for Attestation<Da, StateProof>where Da: PartialEq<Da> + DaSpec, StateProof: PartialEq<StateProof>, <Da as DaSpec>::SlotHash: PartialEq<<Da as DaSpec>::SlotHash>,
source§fn eq(&self, other: &Attestation<Da, StateProof>) -> bool
fn eq(&self, other: &Attestation<Da, StateProof>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl<Da, StateProof> Serialize for Attestation<Da, StateProof>where
Da: DaSpec,
StateProof: Serialize,
<Da as DaSpec>::SlotHash: Serialize,
impl<Da, StateProof> Serialize for Attestation<Da, StateProof>where Da: DaSpec, StateProof: Serialize, <Da as DaSpec>::SlotHash: Serialize,
source§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>( &self, __serializer: __S ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where __S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl<Da, StateProof> Eq for Attestation<Da, StateProof>where Da: Eq + DaSpec, StateProof: Eq, <Da as DaSpec>::SlotHash: Eq,
impl<Da, StateProof> StructuralEq for Attestation<Da, StateProof>where Da: DaSpec,
impl<Da, StateProof> StructuralPartialEq for Attestation<Da, StateProof>where Da: DaSpec,
Auto Trait Implementations§
impl<Da, StateProof> RefUnwindSafe for Attestation<Da, StateProof>where StateProof: RefUnwindSafe, <Da as DaSpec>::SlotHash: RefUnwindSafe,
impl<Da, StateProof> Send for Attestation<Da, StateProof>where StateProof: Send,
impl<Da, StateProof> Sync for Attestation<Da, StateProof>where StateProof: Sync,
impl<Da, StateProof> Unpin for Attestation<Da, StateProof>where StateProof: Unpin, <Da as DaSpec>::SlotHash: Unpin,
impl<Da, StateProof> UnwindSafe for Attestation<Da, StateProof>where StateProof: UnwindSafe, <Da as DaSpec>::SlotHash: UnwindSafe,
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