Enum sui_sdk_types::types::TransactionKind
source · pub enum TransactionKind {
ProgrammableTransaction(ProgrammableTransaction),
ChangeEpoch(ChangeEpoch),
Genesis(GenesisTransaction),
ConsensusCommitPrologue(ConsensusCommitPrologue),
AuthenticatorStateUpdate(AuthenticatorStateUpdate),
EndOfEpoch(Vec<EndOfEpochTransactionKind>),
RandomnessStateUpdate(RandomnessStateUpdate),
ConsensusCommitPrologueV2(ConsensusCommitPrologueV2),
ConsensusCommitPrologueV3(ConsensusCommitPrologueV3),
}
Variants§
ProgrammableTransaction(ProgrammableTransaction)
A transaction that allows the interleaving of native commands and Move calls
ChangeEpoch(ChangeEpoch)
A system transaction that will update epoch information on-chain. It will only ever be executed once in an epoch. The argument is the next epoch number, which is critical because it ensures that this transaction has a unique digest. This will eventually be translated to a Move call during execution. It also doesn’t require/use a gas object. A validator will not sign a transaction of this kind from outside. It only signs internally during epoch changes.
The ChangeEpoch enumerant is now deprecated (but the ChangeEpoch struct is still used by EndOfEpochTransaction below).
Genesis(GenesisTransaction)
ConsensusCommitPrologue(ConsensusCommitPrologue)
AuthenticatorStateUpdate(AuthenticatorStateUpdate)
EndOfEpoch(Vec<EndOfEpochTransactionKind>)
EndOfEpochTransaction replaces ChangeEpoch with a list of transactions that are allowed to run at the end of the epoch.
RandomnessStateUpdate(RandomnessStateUpdate)
ConsensusCommitPrologueV2(ConsensusCommitPrologueV2)
ConsensusCommitPrologueV3(ConsensusCommitPrologueV3)
Trait Implementations§
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 JsonSchema for TransactionKind
Available on crate feature serde
only.
impl JsonSchema for TransactionKind
serde
only.source§fn schema_name() -> String
fn schema_name() -> String
source§fn json_schema(gen: &mut SchemaGenerator) -> Schema
fn json_schema(gen: &mut SchemaGenerator) -> Schema
§fn is_referenceable() -> bool
fn is_referenceable() -> bool
$ref
keyword. Read moresource§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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)