Module spl_token_2022::extension
source · [−]Expand description
Extensions available to token mints and accounts
Modules
Confidential Transfer extension
Default Account State extension
Immutable Owner extension
Memo Transfer extension
Mint Close Authority extension
Utility to reallocate token accounts
Transfer Fee extension
Structs
Length in TLV structure
Encapsulates immutable base state data (mint or account) with possible extensions
Encapsulates mutable base state data (mint or account) with possible extensions
Encapsulates owned immutable base state data (mint or account) with possible extensions
Enums
Different kinds of accounts. Note that Mint
, Account
, and Multisig
types
are determined exclusively by the size of the account, and are not included in
the account data. AccountType
is only included if extensions have been
initialized.
Extensions that can be applied to mints or accounts. Mint extensions must only be applied to mint accounts, and account extensions must only be applied to token holding accounts.
Traits
Trait for base states, specifying the associated enum
Trait to be implemented by all extension states, specifying which extension and account type they are associated with
Functions
If AccountType is uninitialized, set it to the BaseState’s ACCOUNT_TYPE;
if AccountType is already set, check is set correctly for BaseState
This method assumes that the base_data
has already been packed with data of the desired type.