Skip to main content

KioskExtension

KioskExtension

class KioskExtension

A typed view of a 0x2::kiosk_extension::Extension held in a dynamic field of a [Kiosk] object.

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.

isEnabled()

func isEnabled() -> Bool

Whether the extension is currently allowed to call protected actions.

permissions()

func permissions() -> String

Bitmap of the permissions granted to the extension, as a decimal string: bit 0 is place, bit 1 is lock (which also grants place).

storageId()

func storageId() -> ObjectId

Object ID of the Bag holding the extension's own storage.

tryFromBcs(bytes:)

static func tryFromBcs(bytes: Data) throws -> KioskExtension

Decode an Extension from raw BCS bytes.

There is no object-based constructor: an extension is stored as a dynamic field of the kiosk, not as a top-level object with its own type tag.