Expand description
Extensions available to token mints and accounts
Modules§
- confidential_
transfer - Confidential Transfer extension
- cpi_
guard - CPI Guard extension
- default_
account_ state - Default Account State extension
- immutable_
owner - Immutable Owner extension
- interest_
bearing_ mint - Interest-Bearing Mint extension
- memo_
transfer - Memo Transfer extension
- mint_
close_ authority - Mint Close Authority extension
- non_
transferable - Non Transferable extension
- permanent_
delegate - Permanent Delegate extension
- reallocate
- Utility to reallocate token accounts
- transfer_
fee - Transfer Fee extension
Structs§
- Length
- Length in TLV structure
- State
With Extensions - Encapsulates immutable base state data (mint or account) with possible extensions
- State
With Extensions Mut - Encapsulates mutable base state data (mint or account) with possible extensions
- State
With Extensions Owned - Encapsulates owned immutable base state data (mint or account) with possible extensions
Enums§
- Account
Type - Different kinds of accounts. Note that
Mint
,Account
, andMultisig
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. - Extension
Type - 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§
- Base
State - Trait for base states, specifying the associated enum
- Base
State With Extensions - Trait for base state with extension
- Extension
- Trait to be implemented by all extension states, specifying which extension and account type they are associated with
Functions§
- set_
account_ type - 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.