Command
Command
class Command
A single command in a programmable transaction.
BCS
The BCS serialized form for this type is defined by the following ABNF:
command = command-move-call
=/ command-transfer-objects
=/ command-split-coins
=/ command-merge-coins
=/ command-publish
=/ command-make-move-vector
=/ command-upgrade
command-move-call = %d00 move-call
command-transfer-objects = %d01 transfer-objects
command-split-coins = %d02 split-coins
command-merge-coins = %d03 merge-coins
command-publish = %d04 publish
command-make-move-vector = %d05 make-move-vector
command-upgrade = %d06 upgrade
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.
newMakeMoveVector(makeMoveVector:)
static func newMakeMoveVector(makeMoveVector: MakeMoveVector) -> Command
Given n-values of the same type, it constructs a vector. For non objects or an empty vector, the type tag must be specified.
newMergeCoins(mergeCoins:)
static func newMergeCoins(mergeCoins: MergeCoins) -> Command
It merges n-coins into the first coin
newMoveCall(moveCall:)
static func newMoveCall(moveCall: MoveCall) -> Command
A call to either an entry or a public Move function
newPublish(publish:)
static func newPublish(publish: Publish) -> Command
Publishes a Move package. It takes the package bytes and a list of the package's transitive dependencies to link against on-chain.
newSplitCoins(splitCoins:)
static func newSplitCoins(splitCoins: SplitCoins) -> Command
It splits off some amounts into a new coins with those amounts
newTransferObjects(transferObjects:)
static func newTransferObjects(transferObjects: TransferObjects) -> Command
It sends n-objects to the specified address. These objects must have store (public transfer) and either the previous owner must be an address or the object must be newly created.
newUpgrade(upgrade:)
static func newUpgrade(upgrade: Upgrade) -> Command
Upgrades a Move package Takes (in order):
- A vector of serialized modules for the package.
- A vector of object ids for the transitive dependencies of the new package.
- The object ID of the package being upgraded.
- An argument holding the
UpgradeTicketthat must have been produced from an earlier command in the same programmable 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: Command, other: Command) -> 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.