pub enum TransactionKind {
ProgrammableTransaction(ProgrammableTransaction),
ChangeEpoch(ChangeEpoch),
Genesis(GenesisTransaction),
ConsensusCommitPrologue(ConsensusCommitPrologue),
AuthenticatorStateUpdate(AuthenticatorStateUpdate),
EndOfEpoch(Vec<EndOfEpochTransactionKind>),
RandomnessStateUpdate(RandomnessStateUpdate),
ConsensusCommitPrologueV2(ConsensusCommitPrologueV2),
ConsensusCommitPrologueV3(ConsensusCommitPrologueV3),
ConsensusCommitPrologueV4(ConsensusCommitPrologueV4),
ProgrammableSystemTransaction(ProgrammableTransaction),
}
Expand description
Transaction type
§BCS
The BCS serialized form for this type is defined by the following ABNF:
transaction-kind = %x00 ptb
=/ %x01 change-epoch
=/ %x02 genesis-transaction
=/ %x03 consensus-commit-prologue
=/ %x04 authenticator-state-update
=/ %x05 (vector end-of-epoch-transaction-kind)
=/ %x06 randomness-state-update
=/ %x07 consensus-commit-prologue-v2
=/ %x08 consensus-commit-prologue-v3
=/ %x09 consensus-commit-prologue-v4
=/ %x0A ptb
Variants§
ProgrammableTransaction(ProgrammableTransaction)
A user transaction comprised of a list of native commands and move calls
ChangeEpoch(ChangeEpoch)
System transaction used to end an epoch.
The ChangeEpoch variant is now deprecated (but the ChangeEpoch struct is still used by EndOfEpochTransaction below).
Genesis(GenesisTransaction)
Transaction used to initialize the chain state.
Only valid if in the genesis checkpoint (0) and if this is the very first transaction ever executed on the chain.
ConsensusCommitPrologue(ConsensusCommitPrologue)
V1 consensus commit update
AuthenticatorStateUpdate(AuthenticatorStateUpdate)
Update set of valid JWKs used for zklogin
EndOfEpoch(Vec<EndOfEpochTransactionKind>)
Set of operations to run at the end of the epoch to close out the current epoch and start the next one.
RandomnessStateUpdate(RandomnessStateUpdate)
Randomness update
ConsensusCommitPrologueV2(ConsensusCommitPrologueV2)
V2 consensus commit update
ConsensusCommitPrologueV3(ConsensusCommitPrologueV3)
V3 consensus commit update
ConsensusCommitPrologueV4(ConsensusCommitPrologueV4)
V4 consensus commit update
ProgrammableSystemTransaction(ProgrammableTransaction)
A system transaction comprised of a list of native commands and move calls
Trait Implementations§
Source§impl Arbitrary for TransactionKind
impl Arbitrary for TransactionKind
Source§type Parameters = ()
type Parameters = ()
arbitrary_with
accepts for configuration
of the generated Strategy
. Parameters must implement Default
.Source§type Strategy = BoxedStrategy<TransactionKind>
type Strategy = BoxedStrategy<TransactionKind>
Strategy
used to generate values of type Self
.Source§fn arbitrary_with(args: <Self as Arbitrary>::Parameters) -> Self::Strategy
fn arbitrary_with(args: <Self as Arbitrary>::Parameters) -> Self::Strategy
Source§impl Clone for TransactionKind
impl Clone for TransactionKind
Source§fn clone(&self) -> TransactionKind
fn clone(&self) -> TransactionKind
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for TransactionKind
impl Debug for TransactionKind
Source§impl<'de> Deserialize<'de> for TransactionKind
Available on crate feature serde
only.
impl<'de> Deserialize<'de> for TransactionKind
serde
only.Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Source§impl PartialEq for TransactionKind
impl PartialEq for TransactionKind
Source§impl Serialize for TransactionKind
Available on crate feature serde
only.
impl Serialize for TransactionKind
serde
only.impl Eq for TransactionKind
impl StructuralPartialEq for TransactionKind
Auto Trait Implementations§
impl Freeze for TransactionKind
impl RefUnwindSafe for TransactionKind
impl Send for TransactionKind
impl Sync for TransactionKind
impl Unpin for TransactionKind
impl UnwindSafe for TransactionKind
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 moreSource§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<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