Struct Receipt
pub struct Receipt<T = Log> {
pub status: Eip658Value,
pub cumulative_gas_used: u64,
pub logs: Vec<T>,
}eth only.Expand description
Receipt containing result of transaction execution.
Fields§
§status: Eip658ValueIf transaction is executed successfully.
This is the statusCode
cumulative_gas_used: u64Cumulative gas used in the block up to and including this transaction.
See [TxReceipt::cumulative_gas_used].
logs: Vec<T>Log send from contracts.
Implementations§
§impl<T> Receipt<T>
impl<T> Receipt<T>
pub fn bloom_slow(&self) -> Bloom
pub fn bloom_slow(&self) -> Bloom
Calculates Log’s bloom filter. This is slow operation and
ReceiptWithBloom can be used to cache this value.
pub fn with_bloom(self) -> ReceiptWithBloom<Receipt<T>>
pub fn with_bloom(self) -> ReceiptWithBloom<Receipt<T>>
Calculates the bloom filter for the receipt and returns the
ReceiptWithBloom container type.
§impl<T> Receipt<T>
impl<T> Receipt<T>
pub fn into_primitives_receipt(self) -> Receipt
pub fn into_primitives_receipt(self) -> Receipt
§impl<T> Receipt<T>where
T: Encodable,
impl<T> Receipt<T>where
T: Encodable,
pub 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.
pub 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.
pub 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].
§impl<T> Receipt<T>where
T: Decodable,
impl<T> Receipt<T>where
T: Decodable,
pub fn rlp_decode_fields_with_bloom(
buf: &mut &[u8],
) -> Result<ReceiptWithBloom<Receipt<T>>, Error>
pub fn rlp_decode_fields_with_bloom( buf: &mut &[u8], ) -> Result<ReceiptWithBloom<Receipt<T>>, Error>
RLP-decodes receipt’s field with a [Bloom].
Does not expect an RLP header.
Trait Implementations§
§impl<'arbitrary, T> Arbitrary<'arbitrary> for Receipt<T>where
T: Arbitrary<'arbitrary>,
impl<'arbitrary, T> Arbitrary<'arbitrary> for Receipt<T>where
T: Arbitrary<'arbitrary>,
§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Receipt<T>, Error>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Receipt<T>, Error>
Self from the given unstructured data. Read more§fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Receipt<T>, Error>
fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Receipt<T>, Error>
Self from the entirety of the given
unstructured data. Read more§fn size_hint(depth: usize) -> (usize, Option<usize>)
fn size_hint(depth: usize) -> (usize, Option<usize>)
Unstructured this type
needs to construct itself. Read more§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 more§impl<'de, T> Deserialize<'de> for Receipt<T>where
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for Receipt<T>where
T: Deserialize<'de>,
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Receipt<T>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Receipt<T>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
impl<T> Eq for Receipt<T>where
T: Eq,
§impl<T, L> From<EthereumReceipt<T, L>> for Receipt<L>
impl<T, L> From<EthereumReceipt<T, L>> for Receipt<L>
§fn from(value: EthereumReceipt<T, L>) -> Receipt<L>
fn from(value: EthereumReceipt<T, L>) -> Receipt<L>
§impl<T> From<ReceiptWithBloom<Receipt<T>>> for Receipt<T>
impl<T> From<ReceiptWithBloom<Receipt<T>>> for Receipt<T>
§fn from(receipt_with_bloom: ReceiptWithBloom<Receipt<T>>) -> Receipt<T>
fn from(receipt_with_bloom: ReceiptWithBloom<Receipt<T>>) -> Receipt<T>
Consume the structure, returning only the receipt
§impl InMemorySize for Receipt
impl InMemorySize for Receipt
§impl<T> RlpDecodableReceipt for Receipt<T>where
T: Decodable,
impl<T> RlpDecodableReceipt for Receipt<T>where
T: Decodable,
§fn rlp_decode_with_bloom(
buf: &mut &[u8],
) -> Result<ReceiptWithBloom<Receipt<T>>, Error>
fn rlp_decode_with_bloom( buf: &mut &[u8], ) -> Result<ReceiptWithBloom<Receipt<T>>, Error>
Bloom] into ReceiptWithBloom instance.§impl<T> RlpEncodableReceipt for Receipt<T>where
T: Encodable,
impl<T> RlpEncodableReceipt for Receipt<T>where
T: Encodable,
§fn rlp_encoded_length_with_bloom(&self, bloom: &Bloom) -> usize
fn rlp_encoded_length_with_bloom(&self, bloom: &Bloom) -> usize
§fn rlp_encode_with_bloom(&self, bloom: &Bloom, out: &mut dyn BufMut)
fn rlp_encode_with_bloom(&self, bloom: &Bloom, out: &mut dyn BufMut)
§impl<T> Serialize for Receipt<T>where
T: Serialize,
impl<T> Serialize for Receipt<T>where
T: Serialize,
§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,
impl<T> StructuralPartialEq for Receipt<T>where
T: PartialEq,
§impl<T> TxReceipt for Receipt<T>
impl<T> TxReceipt for Receipt<T>
§fn status_or_post_state(&self) -> Eip658Value
fn status_or_post_state(&self) -> Eip658Value
§fn bloom(&self) -> Bloom
fn bloom(&self) -> Bloom
§fn cumulative_gas_used(&self) -> u64
fn cumulative_gas_used(&self) -> u64
§fn into_logs(self) -> Vec<<Receipt<T> as TxReceipt>::Log>
fn into_logs(self) -> Vec<<Receipt<T> as TxReceipt>::Log>
§fn bloom_cheap(&self) -> Option<Bloom>
fn bloom_cheap(&self) -> Option<Bloom>
§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.§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.§fn into_with_bloom_unchecked(self, logs_bloom: Bloom) -> ReceiptWithBloom<Self>
fn into_with_bloom_unchecked(self, logs_bloom: Bloom) -> ReceiptWithBloom<Self>
ReceiptWithBloom with the given bloom filter.Auto Trait Implementations§
impl<T> Freeze for Receipt<T>
impl<T> RefUnwindSafe for Receipt<T>where
Vec<T>: RefUnwindSafe,
impl<T> Send for Receipt<T>
impl<T> Sync for Receipt<T>
impl<T> Unpin for Receipt<T>
impl<T> UnsafeUnpin for Receipt<T>where
Vec<T>: UnsafeUnpin,
impl<T> UnwindSafe for Receipt<T>where
Vec<T>: UnwindSafe,
Blanket Implementations§
impl<A> ArbInterop for A
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
impl<'de, T> BorrowedRpcObject<'de> for Twhere
T: RpcBorrow<'de> + RpcSend,
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Conv for T
impl<T> Conv for T
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].impl<T> MaybeDebug for Twhere
T: Debug,
impl<T> MaybeSerde for Twhere
T: Serialize + for<'de> Deserialize<'de>,
impl<T> NippyJarHeader for T
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
impl<'de, T> RpcBorrow<'de> for T
impl<T> RpcObject for Twhere
T: RpcSend + RpcRecv,
impl<T> RpcRecv for T
impl<T> RpcSend for T
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.§impl<T> TryConv for T
impl<T> TryConv for T
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
Source§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 72 bytes