Skip to main content

TransactionKind

TransactionKind

class TransactionKind

Transaction type

BCS

The BCS serialized form for this type is defined by the following ABNF:

transaction-kind    =  %d00 programmable-transaction               ; Programmable
=/ %d01 genesis-transaction ; Genesis
=/ %d02 consensus-commit-prologue-v1 ; ConsensusCommitPrologueV1
=/ %d03 ; AuthenticatorStateUpdateV1Deprecated
=/ %d04 (vector end-of-epoch-transaction-kind) ; EndOfEpoch
=/ %d05 randomness-state-update ; RandomnessStateUpdate
=/ %d06 transaction-deny-rules-update ; TransactionDenyRulesUpdate

debugDescription

var debugDescription: String { get }

A textual representation of this instance, suitable for debugging.

Calling this property directly is discouraged. Instead, convert an instance of any type to a string by using the String(reflecting:) initializer. This initializer works with any type, and uses the custom debugDescription property for types that conform to CustomDebugStringConvertible:

struct Point: CustomDebugStringConvertible {
let x: Int, y: Int

var debugDescription: String {
return "(\(x), \(y))"
}
}

let p = Point(x: 21, y: 30)
let s = String(reflecting: p)
print(s)
// Prints "(21, 30)"

The conversion of p to a string in the assignment to s uses the Point type's debugDescription property.

description

var description: String { get }

A textual representation of this instance.

Calling this property directly is discouraged. Instead, convert an instance of any type to a string by using the String(describing:) initializer. This initializer works with any type, and uses the custom description property for types that conform to CustomStringConvertible:

struct Point: CustomStringConvertible {
let x: Int, y: Int

var description: String {
return "(\(x), \(y))"
}
}

let p = Point(x: 21, y: 30)
let s = String(describing: p)
print(s)
// Prints "(21, 30)"

The conversion of p to a string in the assignment to s uses the Point type's description property.

hash(into:)

func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Implement this method to conform to the Hashable protocol. The components used for hashing must be the same as the components compared in your type's == operator implementation. Call hasher.combine(_:) with each of these components.

  • Important: In your implementation of hash(into:), don't call finalize() on the hasher instance provided, or replace it with a different instance. Doing so may become a compile-time error in the future.

  • Parameter hasher: The hasher to use when combining the components of this instance.

newConsensusCommitPrologueV1(tx:)

static func newConsensusCommitPrologueV1(tx: ConsensusCommitPrologueV1) -> TransactionKind

Create a TransactionKind for a consensus-commit-prologue-v1 transaction.

newEndOfEpoch(tx:)

static func newEndOfEpoch(tx: [EndOfEpochTransactionKind]) -> TransactionKind

Create a TransactionKind for an end-of-epoch transaction.

newGenesis(tx:)

static func newGenesis(tx: GenesisTransaction) -> TransactionKind

Create a TransactionKind for a genesis transaction.

newProgrammable(tx:)

static func newProgrammable(tx: ProgrammableTransaction) -> TransactionKind

Create a TransactionKind for a programmable transaction.

newRandomnessStateUpdate(tx:)

static func newRandomnessStateUpdate(tx: RandomnessStateUpdate) -> TransactionKind

Create a TransactionKind for a randomness-state-update transaction.

newTransactionDenyRulesUpdate(tx:)

static func newTransactionDenyRulesUpdate(tx: TransactionDenyRulesUpdate) -> TransactionKind

Create a TransactionKind for a transaction-deny-rules-update transaction.

!=(_:_:)

static func != (lhs: Self, rhs: Self) -> Bool

Returns a Boolean value indicating whether two values are not equal.

Inequality is the inverse of equality. For any values a and b, a != b implies that a == b is false.

This is the default implementation of the not-equal-to operator (!=) for any type that conforms to Equatable.

  • Parameters:
    • lhs: A value to compare.
    • rhs: Another value to compare.

==(_:_:)

static func == (self: TransactionKind, other: TransactionKind) -> Bool

Returns a Boolean value indicating whether two values are equal.

Equality is the inverse of inequality. For any values a and b, a == b implies that a != b is false.

  • Parameters:
    • lhs: A value to compare.
    • rhs: Another value to compare.