Struct diem_sdk::types::contract_event::EventWithProof
pub struct EventWithProof {
pub transaction_version: u64,
pub event_index: u64,
pub event: ContractEvent,
pub proof: EventProof,
}
Fields§
§transaction_version: u64
§event_index: u64
§event: ContractEvent
§proof: EventProof
Implementations§
§impl EventWithProof
impl EventWithProof
pub fn new(
transaction_version: u64,
event_index: u64,
event: ContractEvent,
proof: EventProof
) -> EventWithProof
pub fn new( transaction_version: u64, event_index: u64, event: ContractEvent, proof: EventProof ) -> EventWithProof
Constructor.
pub fn verify(
&self,
ledger_info: &LedgerInfo,
event_key: &EventKey,
sequence_number: u64,
transaction_version: u64,
event_index: u64
) -> Result<(), Error>
pub fn verify( &self, ledger_info: &LedgerInfo, event_key: &EventKey, sequence_number: u64, transaction_version: u64, event_index: u64 ) -> Result<(), Error>
Verifies the event with the proof, both carried by self
.
Two things are ensured if no error is raised:
- This event exists in the ledger represented by
ledger_info
. - And this event has the same
event_key
,sequence_number
,transaction_version
, andevent_index
as indicated in the parameter list. If any of these parameter is unknown to the call site and is supposed to be informed by this struct, get it from the struct itself, such as:event_with_proof.event.access_path()
,event_with_proof.event_index()
, etc.
Trait Implementations§
§impl Arbitrary for EventWithProof
impl Arbitrary for EventWithProof
§type Parameters = (<u64 as Arbitrary>::Parameters, <u64 as Arbitrary>::Parameters, <ContractEvent as Arbitrary>::Parameters, <EventProof as Arbitrary>::Parameters)
type Parameters = (<u64 as Arbitrary>::Parameters, <u64 as Arbitrary>::Parameters, <ContractEvent as Arbitrary>::Parameters, <EventProof as Arbitrary>::Parameters)
The type of parameters that
arbitrary_with
accepts for configuration
of the generated Strategy
. Parameters must implement Default
.§type Strategy = Map<(<u64 as Arbitrary>::Strategy, <u64 as Arbitrary>::Strategy, <ContractEvent as Arbitrary>::Strategy, <EventProof as Arbitrary>::Strategy), fn(_: (u64, u64, ContractEvent, EventProof)) -> EventWithProof>
type Strategy = Map<(<u64 as Arbitrary>::Strategy, <u64 as Arbitrary>::Strategy, <ContractEvent as Arbitrary>::Strategy, <EventProof as Arbitrary>::Strategy), fn(_: (u64, u64, ContractEvent, EventProof)) -> EventWithProof>
The type of
Strategy
used to generate values of type Self
.§fn arbitrary_with(
_top: <EventWithProof as Arbitrary>::Parameters
) -> <EventWithProof as Arbitrary>::Strategy
fn arbitrary_with( _top: <EventWithProof as Arbitrary>::Parameters ) -> <EventWithProof as Arbitrary>::Strategy
§impl Clone for EventWithProof
impl Clone for EventWithProof
§fn clone(&self) -> EventWithProof
fn clone(&self) -> EventWithProof
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 more§impl Debug for EventWithProof
impl Debug for EventWithProof
§impl<'de> Deserialize<'de> for EventWithProof
impl<'de> Deserialize<'de> for EventWithProof
§fn deserialize<__D>(
__deserializer: __D
) -> Result<EventWithProof, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>( __deserializer: __D ) -> Result<EventWithProof, <__D as Deserializer<'de>>::Error>where __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl Display for EventWithProof
impl Display for EventWithProof
§impl PartialEq<EventWithProof> for EventWithProof
impl PartialEq<EventWithProof> for EventWithProof
§fn eq(&self, other: &EventWithProof) -> bool
fn eq(&self, other: &EventWithProof) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.§impl Serialize for EventWithProof
impl Serialize for EventWithProof
§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 TryFrom<&EventWithProof> for EventWithProofView
impl TryFrom<&EventWithProof> for EventWithProofView
§fn try_from(event: &EventWithProof) -> Result<EventWithProofView, Error>
fn try_from(event: &EventWithProof) -> Result<EventWithProofView, Error>
Performs the conversion.
§impl TryFrom<&EventWithProofView> for EventWithProof
impl TryFrom<&EventWithProofView> for EventWithProof
§fn try_from(view: &EventWithProofView) -> Result<EventWithProof, Error>
fn try_from(view: &EventWithProofView) -> Result<EventWithProof, Error>
Performs the conversion.
impl Eq for EventWithProof
impl StructuralEq for EventWithProof
impl StructuralPartialEq for EventWithProof
Auto Trait Implementations§
impl RefUnwindSafe for EventWithProof
impl Send for EventWithProof
impl Sync for EventWithProof
impl Unpin for EventWithProof
impl UnwindSafe for EventWithProof
Blanket Implementations§
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.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>
§impl<T> TestOnlyHash for Twhere
T: Serialize + ?Sized,
impl<T> TestOnlyHash for Twhere T: Serialize + ?Sized,
§fn test_only_hash(&self) -> HashValue
fn test_only_hash(&self) -> HashValue
Generates a hash used only for tests.