Expand description
Extensions available to token mints and accounts
Modules§
- confidential_
mint_ burn - Confidential mint-burn extension
- confidential_
transfer - Confidential Transfer extension
- confidential_
transfer_ fee - Confidential Transfer Fee extension
- cpi_
guard - CPI Guard extension
- default_
account_ state - Default Account State extension
- group_
member_ pointer - Group Member Pointer extension
- group_
pointer - Group Pointer extension
- immutable_
owner - Immutable Owner extension
- interest_
bearing_ mint - Interest-Bearing Mint extension
- memo_
transfer - Memo Transfer extension
- metadata_
pointer - Metadata Pointer extension
- mint_
close_ authority - Mint Close Authority extension
- non_
transferable - Non Transferable extension
- pausable
- Pausable extension
- permanent_
delegate - Permanent Delegate extension
- scaled_
ui_ amount - Scaled UI Amount extension
- token_
group - Token-group extension
- token_
metadata - Token-metadata extension
- transfer_
fee - Transfer Fee extension
- transfer_
hook - Transfer Hook extension
Structs§
- Length
- Length in TLV structure
- PodState
With Extensions - Encapsulates immutable base state data (mint or account) with possible extensions, where the base state is Pod for zero-copy serde.
- PodState
With Extensions Mut - Encapsulates mutable base state data (mint or account) with possible extensions, where the base state is Pod for zero-copy serde.
- 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, andMultisigtypes are determined exclusively by the size of the account, and are not included in the account data.AccountTypeis 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
- Base
State With Extensions Mut - Trait for mutable base state with extension
- Extension
- Trait to be implemented by all extension states, specifying which extension and account type they are associated with
Functions§
- alloc_
and_ serialize - Packs a fixed-length extension into a TLV space
- alloc_
and_ serialize_ variable_ len_ extension - Packs a variable-length extension into a TLV space
- set_
account_ type - If
AccountTypeis uninitialized, set it to theBaseState’sACCOUNT_TYPE; ifAccountTypeis already set, check is set correctly forBaseState. This method assumes that thebase_datahas already been packed with data of the desired type.