nftfx

package
v0.0.0-...-bc03976 Latest Latest
Warning

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

Go to latest
Published: Sep 8, 2024 License: BSD-3-Clause Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// MaxPayloadSize is the maximum size that can be placed into a payload
	MaxPayloadSize = units.KiB
)
View Source
const Name = "nftfx"

Variables

View Source
var (

	// ID that this Fx uses when labeled
	ID = ids.ID{'n', 'f', 't', 'f', 'x'}
)

Functions

This section is empty.

Types

type Credential

type Credential struct {
	secp256k1fx.Credential `serialize:"true"`
}

type Factory

type Factory struct{}

func (*Factory) New

func (*Factory) New() any

type Fx

type Fx struct{ secp256k1fx.Fx }

func (*Fx) Initialize

func (fx *Fx) Initialize(vmIntf interface{}) error

func (*Fx) VerifyMintOperation

func (fx *Fx) VerifyMintOperation(tx secp256k1fx.UnsignedTx, op *MintOperation, cred *Credential, utxoIntf interface{}) error

func (*Fx) VerifyOperation

func (fx *Fx) VerifyOperation(txIntf, opIntf, credIntf interface{}, utxosIntf []interface{}) error

func (*Fx) VerifyTransfer

func (*Fx) VerifyTransfer(_, _, _, _ interface{}) error

func (*Fx) VerifyTransferOperation

func (fx *Fx) VerifyTransferOperation(tx secp256k1fx.UnsignedTx, op *TransferOperation, cred *Credential, utxoIntf interface{}) error

type MintOperation

type MintOperation struct {
	MintInput secp256k1fx.Input           `serialize:"true" json:"mintInput"`
	GroupID   uint32                      `serialize:"true" json:"groupID"`
	Payload   types.JSONByteSlice         `serialize:"true" json:"payload"`
	Outputs   []*secp256k1fx.OutputOwners `serialize:"true" json:"outputs"`
}

func (*MintOperation) Cost

func (op *MintOperation) Cost() (uint64, error)

func (*MintOperation) InitCtx

func (op *MintOperation) InitCtx(ctx *snow.Context)

func (*MintOperation) Outs

func (op *MintOperation) Outs() []verify.State

Outs Returns []TransferOutput as []verify.State

func (*MintOperation) Verify

func (op *MintOperation) Verify() error

type MintOutput

type MintOutput struct {
	verify.IsState `json:"-"`

	GroupID                  uint32 `serialize:"true" json:"groupID"`
	secp256k1fx.OutputOwners `serialize:"true"`
}

func (*MintOutput) MarshalJSON

func (out *MintOutput) MarshalJSON() ([]byte, error)

MarshalJSON marshals Amt and the embedded OutputOwners struct into a JSON readable format If OutputOwners cannot be serialized then this will return error

type TransferOperation

type TransferOperation struct {
	Input  secp256k1fx.Input `serialize:"true" json:"input"`
	Output TransferOutput    `serialize:"true" json:"output"`
}

func (*TransferOperation) Cost

func (op *TransferOperation) Cost() (uint64, error)

func (*TransferOperation) InitCtx

func (op *TransferOperation) InitCtx(ctx *snow.Context)

func (*TransferOperation) Outs

func (op *TransferOperation) Outs() []verify.State

func (*TransferOperation) Verify

func (op *TransferOperation) Verify() error

type TransferOutput

type TransferOutput struct {
	verify.IsState `json:"-"`

	GroupID                  uint32              `serialize:"true" json:"groupID"`
	Payload                  types.JSONByteSlice `serialize:"true" json:"payload"`
	secp256k1fx.OutputOwners `serialize:"true"`
}

func (*TransferOutput) MarshalJSON

func (out *TransferOutput) MarshalJSON() ([]byte, error)

MarshalJSON marshals Amt and the embedded OutputOwners struct into a JSON readable format If OutputOwners cannot be serialized then this will return error

func (*TransferOutput) Verify

func (out *TransferOutput) Verify() error

Jump to

Keyboard shortcuts

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