pub struct TransactionEffects {Show 14 fields
pub bcs: Option<Bcs>,
pub digest: Option<String>,
pub version: Option<i32>,
pub status: Option<ExecutionStatus>,
pub epoch: Option<u64>,
pub gas_used: Option<GasCostSummary>,
pub transaction_digest: Option<String>,
pub gas_object: Option<ChangedObject>,
pub events_digest: Option<String>,
pub dependencies: Vec<String>,
pub lamport_version: Option<u64>,
pub changed_objects: Vec<ChangedObject>,
pub unchanged_shared_objects: Vec<UnchangedSharedObject>,
pub auxiliary_data_digest: Option<String>,
}
Expand description
The effects of executing a transaction.
Fields§
§bcs: Option<Bcs>
This TransactionEffects serialized as BCS.
digest: Option<String>
The digest of this TransactionEffects.
version: Option<i32>
Version of this TransactionEffects.
status: Option<ExecutionStatus>
The status of the execution.
epoch: Option<u64>
The epoch when this transaction was executed.
gas_used: Option<GasCostSummary>
The gas used by this transaction.
transaction_digest: Option<String>
The transaction digest.
gas_object: Option<ChangedObject>
Information about the gas object. Also present in the changed_objects
vector.
System transaction that don’t require gas will leave this as None
.
events_digest: Option<String>
The digest of the events emitted during execution,
can be None
if the transaction does not emit any event.
dependencies: Vec<String>
The set of transaction digests this transaction depends on.
lamport_version: Option<u64>
The version number of all the written objects (excluding packages) by this transaction.
changed_objects: Vec<ChangedObject>
Objects whose state are changed by this transaction.
Shared objects that are not mutated in this transaction. Unlike owned objects, read-only shared objects’ version are not committed in the transaction, and in order for a node to catch up and execute it without consensus sequencing, the version needs to be committed in the effects.
auxiliary_data_digest: Option<String>
Auxiliary data that are not protocol-critical, generated as part of the effects but are stored separately. Storing it separately allows us to avoid bloating the effects with data that are not critical. It also provides more flexibility on the format and type of the data.
Implementations§
Source§impl TransactionEffects
impl TransactionEffects
pub const BCS_FIELD: &'static MessageField
pub const DIGEST_FIELD: &'static MessageField
pub const VERSION_FIELD: &'static MessageField
pub const STATUS_FIELD: &'static MessageField
pub const EPOCH_FIELD: &'static MessageField
pub const GAS_USED_FIELD: &'static MessageField
pub const TRANSACTION_DIGEST_FIELD: &'static MessageField
pub const GAS_OBJECT_FIELD: &'static MessageField
pub const EVENTS_DIGEST_FIELD: &'static MessageField
pub const DEPENDENCIES_FIELD: &'static MessageField
pub const LAMPORT_VERSION_FIELD: &'static MessageField
pub const CHANGED_OBJECTS_FIELD: &'static MessageField
pub const UNCHANGED_SHARED_OBJECTS_FIELD: &'static MessageField
pub const AUXILIARY_DATA_DIGEST_FIELD: &'static MessageField
Source§impl TransactionEffects
impl TransactionEffects
Sourcepub fn digest(&self) -> &str
pub fn digest(&self) -> &str
Returns the value of digest
, or the default value if digest
is unset.
Sourcepub fn version(&self) -> i32
pub fn version(&self) -> i32
Returns the value of version
, or the default value if version
is unset.
Sourcepub fn transaction_digest(&self) -> &str
pub fn transaction_digest(&self) -> &str
Returns the value of transaction_digest
, or the default value if transaction_digest
is unset.
Sourcepub fn events_digest(&self) -> &str
pub fn events_digest(&self) -> &str
Returns the value of events_digest
, or the default value if events_digest
is unset.
Sourcepub fn lamport_version(&self) -> u64
pub fn lamport_version(&self) -> u64
Returns the value of lamport_version
, or the default value if lamport_version
is unset.
Sourcepub fn auxiliary_data_digest(&self) -> &str
pub fn auxiliary_data_digest(&self) -> &str
Returns the value of auxiliary_data_digest
, or the default value if auxiliary_data_digest
is unset.
Trait Implementations§
Source§impl Clone for TransactionEffects
impl Clone for TransactionEffects
Source§fn clone(&self) -> TransactionEffects
fn clone(&self) -> TransactionEffects
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for TransactionEffects
impl Debug for TransactionEffects
Source§impl Default for TransactionEffects
impl Default for TransactionEffects
Source§impl From<TransactionEffects> for TransactionEffects
impl From<TransactionEffects> for TransactionEffects
Source§impl Message for TransactionEffects
impl Message for TransactionEffects
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.Source§impl MessageFields for TransactionEffects
impl MessageFields for TransactionEffects
const FIELDS: &'static [&'static MessageField]
Source§impl MessageMerge<&TransactionEffects> for TransactionEffects
impl MessageMerge<&TransactionEffects> for TransactionEffects
fn merge(&mut self, source: &TransactionEffects, mask: &FieldMaskTree)
Source§impl MessageMerge<&TransactionEffects> for TransactionEffects
impl MessageMerge<&TransactionEffects> for TransactionEffects
fn merge(&mut self, _: &TransactionEffects, mask: &FieldMaskTree)
Source§impl MessageMerge<&TransactionEffectsV1> for TransactionEffects
impl MessageMerge<&TransactionEffectsV1> for TransactionEffects
fn merge(&mut self, _: &TransactionEffectsV1, mask: &FieldMaskTree)
Source§impl MessageMerge<&TransactionEffectsV2> for TransactionEffects
impl MessageMerge<&TransactionEffectsV2> for TransactionEffects
fn merge(&mut self, _: &TransactionEffectsV2, mask: &FieldMaskTree)
Source§impl PartialEq for TransactionEffects
impl PartialEq for TransactionEffects
Source§impl TryFrom<&TransactionEffects> for TransactionEffects
impl TryFrom<&TransactionEffects> for TransactionEffects
Source§type Error = TryFromProtoError
type Error = TryFromProtoError
impl StructuralPartialEq for TransactionEffects
Auto Trait Implementations§
impl !Freeze for TransactionEffects
impl RefUnwindSafe for TransactionEffects
impl Send for TransactionEffects
impl Sync for TransactionEffects
impl Unpin for TransactionEffects
impl UnwindSafe for TransactionEffects
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
self
to type T
. The semantics of numeric casting with the as
operator are followed, so <T as As>::as_::<U>
can be used in the same way as T as U
for numeric conversions. Read more§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: '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
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> 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> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§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 Request
§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
].Source§impl<T, S> MessageMergeFrom<S> for Twhere
T: MessageMerge<S> + Default,
impl<T, S> MessageMergeFrom<S> for Twhere
T: MessageMerge<S> + Default,
fn merge_from(source: S, mask: &FieldMaskTree) -> 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> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§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.