types

package
v1.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 26, 2024 License: GPL-3.0 Imports: 8 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateRawTransaction

func CreateRawTransaction(param CreateRawTransactionParam) ([]byte, error)

Types

type Account

type Account struct {
	PublicKey  common.PublicKey
	PrivateKey ed25519.PrivateKey
}

func AccountFromPrivateKeyBytes

func AccountFromPrivateKeyBytes(privateKey []byte) Account

func NewAccount

func NewAccount() Account

type AccountMeta

type AccountMeta struct {
	PubKey     common.PublicKey
	IsSigner   bool
	IsWritable bool
}

type CompiledInstruction

type CompiledInstruction struct {
	ProgramIDIndex int
	Accounts       []int
	Data           []byte
}

type CreateRawTransactionParam

type CreateRawTransactionParam struct {
	Instructions    []Instruction
	Signers         []Account
	FeePayer        common.PublicKey
	RecentBlockHash string
}

type Instruction

type Instruction struct {
	ProgramID common.PublicKey
	Accounts  []AccountMeta //accounts programs will use
	Data      []byte        //instruct + params
}

type Message

type Message struct {
	Header          MessageHeader
	Accounts        []common.PublicKey
	RecentBlockHash string
	Instructions    []CompiledInstruction
}

func MessageDeserialize

func MessageDeserialize(messageData []byte) (Message, error)

func MustMessageDeserialize

func MustMessageDeserialize(messageData []byte) Message

func NewMessage

func NewMessage(feePayer common.PublicKey, instructions []Instruction, recentBlockHash string) Message

func (*Message) DecompileInstructions

func (m *Message) DecompileInstructions() []Instruction

func (*Message) Serialize

func (m *Message) Serialize() ([]byte, error)

type MessageHeader

type MessageHeader struct {
	NumRequireSignatures        uint8
	NumReadonlySignedAccounts   uint8
	NumReadonlyUnsignedAccounts uint8
}

type Signature

type Signature []byte

type Transaction

type Transaction struct {
	Signatures []Signature
	Message    Message
}

func CreateTransaction

func CreateTransaction(message Message, signaturePairs map[common.PublicKey]Signature) (Transaction, error)

func MustTransactionDeserialize

func MustTransactionDeserialize(data []byte) Transaction

func TransactionDeserialize

func TransactionDeserialize(tx []byte) (Transaction, error)

func (*Transaction) Serialize

func (tx *Transaction) Serialize() ([]byte, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL