pub struct Log {
pub address: Vec<u8>,
pub topics: Vec<Vec<u8>>,
pub data: Vec<u8>,
pub index: u32,
pub block_index: u32,
pub ordinal: u64,
}
Fields
address: Vec<u8>
topics: Vec<Vec<u8>>
data: Vec<u8>
index: u32
Index is the index of the log relative to the transaction. This index is always populated regardless of the state revertion of the the call that emitted this log.
block_index: u32
BlockIndex represents the index of the log relative to the Block.
An important notice is that this field will be 0 when the call that emitted the log has been reverted by the chain.
Currently, there is two locations where a Log can be obtained:
- block.transaction_traces[].receipt.logs[]
- block.transaction_traces[].calls[].logs[]
In the receipt
case, the logs will be populated only when the call
that emitted them has not been reverted by the chain and when in this
position, the blockIndex
is always populated correctly.
In the case of calls
case, for call
where stateReverted == true
,
the blockIndex
value will always be 0.
ordinal: u64
Trait Implementations
sourceimpl Message for Log
impl Message for Log
sourcefn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
sourcefn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>where
B: BufMut,
fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>where
B: BufMut,
Encodes the message to a buffer. Read more
sourcefn encode_to_vec(&self) -> Vec<u8, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
fn encode_to_vec(&self) -> Vec<u8, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Encodes the message to a newly allocated buffer.
sourcefn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>where
B: BufMut,
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>where
B: BufMut,
Encodes the message with a length-delimiter to a buffer. Read more
sourcefn encode_length_delimited_to_vec(&self) -> Vec<u8, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
fn encode_length_delimited_to_vec(&self) -> Vec<u8, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Encodes the message with a length-delimiter to a newly allocated buffer.
sourcefn decode<B>(buf: B) -> Result<Self, DecodeError>where
B: Buf,
Self: Default,
fn decode<B>(buf: B) -> Result<Self, DecodeError>where
B: Buf,
Self: Default,
Decodes an instance of the message from a buffer. Read more
sourcefn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>where
B: Buf,
Self: Default,
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>where
B: Buf,
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
sourcefn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>where
B: Buf,
fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>where
B: Buf,
Decodes an instance of the message from a buffer, and merges it into
self
. Read moresourcefn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>where
B: Buf,
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>where
B: Buf,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self
. Read moreimpl StructuralPartialEq for Log
Auto Trait Implementations
impl RefUnwindSafe for Log
impl Send for Log
impl Sync for Log
impl Unpin for Log
impl UnwindSafe for Log
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more