Documentation ¶
Index ¶
- Constants
- Variables
- func InstructionIDToName(id uint8) string
- func SetProgramID(pubkey common.PublicKey)
- type GroupPointer
- type Initialize
- func (obj *Initialize) Build() *Instruction
- func (obj *Initialize) EncodeToTree(parent treeout.Branches)
- func (obj *Initialize) GetMintAccount() *common.AccountMeta
- func (obj *Initialize) MarshalWithEncoder(encoder *binary.Encoder) (err error)
- func (obj *Initialize) SetAuthority(authority common.PublicKey) *Initialize
- func (obj *Initialize) SetGroupAddress(groupAddress common.PublicKey) *Initialize
- func (obj *Initialize) SetMintAccount(mint common.PublicKey, multiSigners ...common.PublicKey) *Initialize
- func (obj *Initialize) SetProgramId(programId *common.PublicKey) *Initialize
- func (obj *Initialize) UnmarshalWithDecoder(decoder *binary.Decoder) (err error)
- func (obj *Initialize) Validate() error
- func (obj *Initialize) ValidateAndBuild() (*Instruction, error)
- type Instruction
- func (obj *Instruction) Accounts() (out []*common.AccountMeta)
- func (obj *Instruction) Data() ([]byte, error)
- func (obj *Instruction) EncodeToTree(parent treeout.Branches)
- func (obj *Instruction) MarshalWithEncoder(encoder *binary.Encoder) error
- func (obj *Instruction) ProgramID() common.PublicKey
- func (obj *Instruction) TextEncode(encoder *text.Encoder, option *text.Option) error
- func (obj *Instruction) UnmarshalWithDecoder(decoder *binary.Decoder) error
- type Update
- func (obj *Update) Build() *Instruction
- func (obj *Update) EncodeToTree(parent treeout.Branches)
- func (obj *Update) GetAuthorityAccount() *common.AccountMeta
- func (obj *Update) GetMintAccount() *common.AccountMeta
- func (obj *Update) MarshalWithEncoder(encoder *binary.Encoder) (err error)
- func (obj *Update) SetAuthorityAccount(authority common.PublicKey, multiSigners ...common.PublicKey) *Update
- func (obj *Update) SetGroupAddress(groupAddress common.PublicKey) *Update
- func (obj *Update) SetMintAccount(mint common.PublicKey) *Update
- func (obj *Update) SetProgramId(programId *common.PublicKey) *Update
- func (obj *Update) UnmarshalWithDecoder(decoder *binary.Decoder) (err error)
- func (obj *Update) Validate() error
- func (obj *Update) ValidateAndBuild() (*Instruction, error)
Constants ¶
const GROUP_POINTER_SIZE = 64
const ProgramName = "group_pointer"
Variables ¶
var ( Instruction_Initialize uint8 = 0 Instruction_Update uint8 = 1 )
var InstructionImplDef = binary.NewVariantDefinition(binary.Uint8TypeIDEncoding, []binary.VariantType{ { "initialize", (*Initialize)(nil), }, { "update", (*Update)(nil), }, })
var ProgramID common.PublicKey = common.MustPublicKeyFromBase58("11111111111111111111111111111111")
Functions ¶
func InstructionIDToName ¶
InstructionIDToName returns the name of the instruction given its ID.
func SetProgramID ¶
Types ¶
type GroupPointer ¶
type GroupPointer struct { // Authority that can set the group address Authority common.PublicKey // Account address that holds the group GroupAddress common.PublicKey }
GroupPointer Struct Group member pointer extension data for mints.
func (*GroupPointer) MarshalWithEncoder ¶
func (obj *GroupPointer) MarshalWithEncoder(encoder *binary.Encoder) (err error)
func (*GroupPointer) UnmarshalWithDecoder ¶
func (obj *GroupPointer) UnmarshalWithDecoder(decoder *binary.Decoder) (err error)
type Initialize ¶
type Initialize struct { // The public key for the account that can update the group address Authority *common.PublicKey // The account address that holds the group GroupAddress *common.PublicKey // [0] = [WRITE] mint `The mint to initialize.` common.AccountMetaSlice `bin:"-"` // contains filtered or unexported fields }
Initialize Instruction
func NewInitializeInstruction ¶
func NewInitializeInstruction( authority common.PublicKey, groupAddress common.PublicKey, mint common.PublicKey, ) *Initialize
NewInitializeInstruction
Parameters:
authority: The public key for the account that can update the group address groupAddress: The account address that holds the group mint: The mint to initialize.
func NewInitializeInstructionBuilder ¶
func NewInitializeInstructionBuilder() *Initialize
NewInitializeInstructionBuilder creates a new `Initialize` instruction builder.
func (*Initialize) Build ¶
func (obj *Initialize) Build() *Instruction
func (*Initialize) EncodeToTree ¶
func (obj *Initialize) EncodeToTree(parent treeout.Branches)
func (*Initialize) GetMintAccount ¶
func (obj *Initialize) GetMintAccount() *common.AccountMeta
GetMintAccount gets the "mint" parameter. The mint to initialize.
func (*Initialize) MarshalWithEncoder ¶
func (obj *Initialize) MarshalWithEncoder(encoder *binary.Encoder) (err error)
func (*Initialize) SetAuthority ¶
func (obj *Initialize) SetAuthority(authority common.PublicKey) *Initialize
SetAuthority sets the "authority" parameter.
func (*Initialize) SetGroupAddress ¶
func (obj *Initialize) SetGroupAddress(groupAddress common.PublicKey) *Initialize
SetGroupAddress sets the "groupAddress" parameter.
func (*Initialize) SetMintAccount ¶
func (obj *Initialize) SetMintAccount(mint common.PublicKey, multiSigners ...common.PublicKey) *Initialize
SetMintAccount sets the "mint" parameter. The mint to initialize.
func (*Initialize) SetProgramId ¶
func (obj *Initialize) SetProgramId(programId *common.PublicKey) *Initialize
func (*Initialize) UnmarshalWithDecoder ¶
func (obj *Initialize) UnmarshalWithDecoder(decoder *binary.Decoder) (err error)
func (*Initialize) Validate ¶
func (obj *Initialize) Validate() error
func (*Initialize) ValidateAndBuild ¶
func (obj *Initialize) ValidateAndBuild() (*Instruction, error)
ValidateAndBuild validates the instruction parameters and accounts; if there is a validation error, it returns the error. Otherwise, it builds and returns the instruction.
type Instruction ¶
type Instruction struct { binary.BaseVariant // contains filtered or unexported fields }
func DecodeInstruction ¶
func DecodeInstruction(accounts []*common.AccountMeta, data []byte) (*Instruction, error)
func (*Instruction) Accounts ¶
func (obj *Instruction) Accounts() (out []*common.AccountMeta)
func (*Instruction) Data ¶
func (obj *Instruction) Data() ([]byte, error)
func (*Instruction) EncodeToTree ¶
func (obj *Instruction) EncodeToTree(parent treeout.Branches)
func (*Instruction) MarshalWithEncoder ¶
func (obj *Instruction) MarshalWithEncoder(encoder *binary.Encoder) error
func (*Instruction) ProgramID ¶
func (obj *Instruction) ProgramID() common.PublicKey
func (*Instruction) TextEncode ¶
func (*Instruction) UnmarshalWithDecoder ¶
func (obj *Instruction) UnmarshalWithDecoder(decoder *binary.Decoder) error
type Update ¶
type Update struct { // The new account address that holds the group configurations GroupAddress *common.PublicKey // [0] = [WRITE] mint `The mint.` // [1] = [SIGNER] authority `The group member pointer authority.,..2+M `[signer]` M signer accounts.` common.AccountMetaSlice `bin:"-"` // contains filtered or unexported fields }
Update Instruction
func NewUpdateInstruction ¶
func NewUpdateInstruction( groupAddress common.PublicKey, mint common.PublicKey, authority common.PublicKey, ) *Update
NewUpdateInstruction
Parameters:
groupAddress: The new account address that holds the group configurations mint: The mint. authority: The group member pointer authority. ..2+M `[signer]` M signer accounts.
func NewUpdateInstructionBuilder ¶
func NewUpdateInstructionBuilder() *Update
NewUpdateInstructionBuilder creates a new `Update` instruction builder.
func (*Update) Build ¶
func (obj *Update) Build() *Instruction
func (*Update) EncodeToTree ¶
func (*Update) GetAuthorityAccount ¶
func (obj *Update) GetAuthorityAccount() *common.AccountMeta
GetAuthorityAccount gets the "authority" parameter. The group member pointer authority. ..2+M `[signer]` M signer accounts.
func (*Update) GetMintAccount ¶
func (obj *Update) GetMintAccount() *common.AccountMeta
GetMintAccount gets the "mint" parameter. The mint.
func (*Update) MarshalWithEncoder ¶
func (*Update) SetAuthorityAccount ¶
func (obj *Update) SetAuthorityAccount(authority common.PublicKey, multiSigners ...common.PublicKey) *Update
SetAuthorityAccount sets the "authority" parameter. The group member pointer authority. ..2+M `[signer]` M signer accounts.
func (*Update) SetGroupAddress ¶
SetGroupAddress sets the "groupAddress" parameter.
func (*Update) SetMintAccount ¶
SetMintAccount sets the "mint" parameter. The mint.
func (*Update) UnmarshalWithDecoder ¶
func (*Update) ValidateAndBuild ¶
func (obj *Update) ValidateAndBuild() (*Instruction, error)
ValidateAndBuild validates the instruction parameters and accounts; if there is a validation error, it returns the error. Otherwise, it builds and returns the instruction.