pub struct OpDepositReceipt<T = Log> {
pub inner: Receipt<T>,
pub deposit_nonce: Option<u64>,
pub deposit_receipt_version: Option<u64>,
}
consensus
only.Expand description
Receipt containing result of transaction execution.
Fields§
§inner: Receipt<T>
The inner receipt type.
deposit_nonce: Option<u64>
Deposit nonce for Optimism deposit transactions
deposit_receipt_version: Option<u64>
Deposit receipt version for Optimism deposit transactions
The deposit receipt version was introduced in Canyon to indicate an update to how receipt hashes should be computed when set. The state transition process ensures this is only set for post-Canyon deposit transactions.
Implementations§
Source§impl OpDepositReceipt
impl OpDepositReceipt
Sourcepub fn bloom_slow(&self) -> Bloom
pub fn bloom_slow(&self) -> Bloom
Calculates Log
’s bloom filter. this is slow operation and OpDepositReceiptWithBloom
can be used to cache this value.
Sourcepub fn with_bloom(self) -> ReceiptWithBloom<OpDepositReceipt>
pub fn with_bloom(self) -> ReceiptWithBloom<OpDepositReceipt>
Calculates the bloom filter for the receipt and returns the OpDepositReceiptWithBloom container type.
Source§impl<T> OpDepositReceipt<T>where
T: Encodable,
impl<T> OpDepositReceipt<T>where
T: Encodable,
Sourcepub fn rlp_encoded_fields_length_with_bloom(&self, bloom: &Bloom) -> usize
pub fn rlp_encoded_fields_length_with_bloom(&self, bloom: &Bloom) -> usize
Returns length of RLP-encoded receipt fields with the given Bloom
without an RLP header.
Sourcepub fn rlp_encode_fields_with_bloom(&self, bloom: &Bloom, out: &mut dyn BufMut)
pub fn rlp_encode_fields_with_bloom(&self, bloom: &Bloom, out: &mut dyn BufMut)
RLP-encodes receipt fields with the given Bloom
without an RLP header.
Sourcepub fn rlp_header_with_bloom(&self, bloom: &Bloom) -> Header
pub fn rlp_header_with_bloom(&self, bloom: &Bloom) -> Header
Returns RLP header for this receipt encoding with the given Bloom
.
Source§impl<T> OpDepositReceipt<T>where
T: Decodable,
impl<T> OpDepositReceipt<T>where
T: Decodable,
Sourcepub fn rlp_decode_fields_with_bloom(
buf: &mut &[u8],
) -> Result<ReceiptWithBloom<OpDepositReceipt<T>>, Error>
pub fn rlp_decode_fields_with_bloom( buf: &mut &[u8], ) -> Result<ReceiptWithBloom<OpDepositReceipt<T>>, Error>
RLP-decodes receipt’s field with a Bloom
.
Does not expect an RLP header.
Trait Implementations§
Source§impl<'a, T> Arbitrary<'a> for OpDepositReceipt<T>where
T: Arbitrary<'a>,
Available on crate feature arbitrary
only.
impl<'a, T> Arbitrary<'a> for OpDepositReceipt<T>where
T: Arbitrary<'a>,
arbitrary
only.Source§fn arbitrary(u: &mut Unstructured<'a>) -> Result<OpDepositReceipt<T>, Error>
fn arbitrary(u: &mut Unstructured<'a>) -> Result<OpDepositReceipt<T>, Error>
Self
from the given unstructured data. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
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<T> AsRef<Receipt<T>> for OpDepositReceipt<T>
impl<T> AsRef<Receipt<T>> for OpDepositReceipt<T>
Source§impl<T> Clone for OpDepositReceipt<T>where
T: Clone,
impl<T> Clone for OpDepositReceipt<T>where
T: Clone,
Source§fn clone(&self) -> OpDepositReceipt<T>
fn clone(&self) -> OpDepositReceipt<T>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl<T> Debug for OpDepositReceipt<T>where
T: Debug,
impl<T> Debug for OpDepositReceipt<T>where
T: Debug,
Source§impl<T> Default for OpDepositReceipt<T>where
T: Default,
impl<T> Default for OpDepositReceipt<T>where
T: Default,
Source§fn default() -> OpDepositReceipt<T>
fn default() -> OpDepositReceipt<T>
Source§impl<'de, T> Deserialize<'de> for OpDepositReceipt<T>where
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for OpDepositReceipt<T>where
T: Deserialize<'de>,
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<OpDepositReceipt<T>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<OpDepositReceipt<T>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl OpTxReceipt for OpDepositReceipt
impl OpTxReceipt for OpDepositReceipt
Source§fn deposit_nonce(&self) -> Option<u64>
fn deposit_nonce(&self) -> Option<u64>
Source§fn deposit_receipt_version(&self) -> Option<u64>
fn deposit_receipt_version(&self) -> Option<u64>
Source§impl<T> PartialEq for OpDepositReceipt<T>where
T: PartialEq,
impl<T> PartialEq for OpDepositReceipt<T>where
T: PartialEq,
Source§impl<T> RlpDecodableReceipt for OpDepositReceipt<T>where
T: Decodable,
impl<T> RlpDecodableReceipt for OpDepositReceipt<T>where
T: Decodable,
Source§fn rlp_decode_with_bloom(
buf: &mut &[u8],
) -> Result<ReceiptWithBloom<OpDepositReceipt<T>>, Error>
fn rlp_decode_with_bloom( buf: &mut &[u8], ) -> Result<ReceiptWithBloom<OpDepositReceipt<T>>, Error>
Bloom
into ReceiptWithBloom
instance.Source§impl<T> RlpEncodableReceipt for OpDepositReceipt<T>where
T: Encodable,
impl<T> RlpEncodableReceipt for OpDepositReceipt<T>where
T: Encodable,
Source§fn rlp_encoded_length_with_bloom(&self, bloom: &Bloom) -> usize
fn rlp_encoded_length_with_bloom(&self, bloom: &Bloom) -> usize
Source§fn rlp_encode_with_bloom(&self, bloom: &Bloom, out: &mut dyn BufMut)
fn rlp_encode_with_bloom(&self, bloom: &Bloom, out: &mut dyn BufMut)
Source§impl<T> Serialize for OpDepositReceipt<T>where
T: Serialize,
impl<T> Serialize for OpDepositReceipt<T>where
T: 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,
Source§impl<T> TxReceipt for OpDepositReceipt<T>
impl<T> TxReceipt for OpDepositReceipt<T>
Source§fn status_or_post_state(&self) -> Eip658Value
fn status_or_post_state(&self) -> Eip658Value
Source§fn bloom(&self) -> Bloom
fn bloom(&self) -> Bloom
Source§fn cumulative_gas_used(&self) -> u64
fn cumulative_gas_used(&self) -> u64
Source§fn logs(&self) -> &[<OpDepositReceipt<T> as TxReceipt>::Log]
fn logs(&self) -> &[<OpDepositReceipt<T> as TxReceipt>::Log]
Source§fn bloom_cheap(&self) -> Option<Bloom>
fn bloom_cheap(&self) -> Option<Bloom>
Source§fn with_bloom_ref(&self) -> ReceiptWithBloom<&Self>
fn with_bloom_ref(&self) -> ReceiptWithBloom<&Self>
ReceiptWithBloom
with the computed bloom filter Self::bloom
and a reference
to the receipt.Source§fn into_with_bloom(self) -> ReceiptWithBloom<Self>
fn into_with_bloom(self) -> ReceiptWithBloom<Self>
ReceiptWithBloom
with the computed bloom filter
Self::bloom
and the receipt.impl<T> Eq for OpDepositReceipt<T>where
T: Eq,
impl<T> StructuralPartialEq for OpDepositReceipt<T>
Auto Trait Implementations§
impl<T> Freeze for OpDepositReceipt<T>
impl<T> RefUnwindSafe for OpDepositReceipt<T>where
T: RefUnwindSafe,
impl<T> Send for OpDepositReceipt<T>where
T: Send,
impl<T> Sync for OpDepositReceipt<T>where
T: Sync,
impl<T> Unpin for OpDepositReceipt<T>where
T: Unpin,
impl<T> UnwindSafe for OpDepositReceipt<T>where
T: 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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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 more