Help us shape the future of Go! Take the 2026 Go Developer Survey

fxs

package
v1.37.0 Latest Latest
Warning

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

Go to latest
Published: Sep 7, 2026 License: BSD-3-Clause Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Fx

type Fx interface {
	// Initialize this feature extension to be running under this VM. Should
	// return an error if the VM is incompatible.
	Initialize(vm interface{}) error

	// Notify this Fx that the VM is in bootstrapping
	Bootstrapping() error

	// Notify this Fx that the VM is bootstrapped
	Bootstrapped() error

	// VerifyTransfer verifies that the specified transaction can spend the
	// provided utxo with no restrictions on the destination. If the transaction
	// can't spend the output based on the input and credential, a non-nil error
	// should be returned.
	VerifyTransfer(tx, in, cred, utxo interface{}) error

	// VerifyOperation verifies that the specified transaction can spend the
	// provided utxos conditioned on the result being restricted to the provided
	// outputs. If the transaction can't spend the output based on the input and
	// credential, a non-nil error should be returned.
	VerifyOperation(tx, op, cred interface{}, utxos []interface{}) error
}

Fx is the interface a feature extension must implement to support the XVM.

type FxCredential

type FxCredential struct {
	FxID       ids.ID            `serialize:"false" json:"fxID"`
	Credential verify.Verifiable `serialize:"true"  json:"credential"`
}

func (*FxCredential) Verify

func (f *FxCredential) Verify() error

type FxOperation

type FxOperation interface {
	verify.Verifiable
	lux.Coster

	Outs() []verify.State
}

type ParsedFx

type ParsedFx struct {
	ID ids.ID
	Fx Fx
}

Jump to

Keyboard shortcuts

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