Documentation
¶
Index ¶
- Variables
- func AwaitTxAccepted(c *Client, ctx context.Context, txID ids.ID, freq time.Duration, ...) error
- func NewPubSubFilterer(tx *txs.Tx) pubsub.Filterer
- type AssetDefinition
- type AssetIDChangeAddr
- type AssetInitialState
- type BCLookup
- type Balance
- type BuildGenesisArgs
- type BuildGenesisReply
- type Client
- func (c *Client) GetAllBalances(ctx context.Context, addr ids.ShortID, includePartial bool, ...) ([]Balance, error)deprecated
- func (c *Client) GetAssetDescription(ctx context.Context, assetID string, options ...rpc.Option) (*GetAssetDescriptionReply, error)
- func (c *Client) GetAtomicUTXOs(ctx context.Context, addrs []ids.ShortID, sourceChain string, limit uint32, ...) ([][]byte, ids.ShortID, ids.ID, error)
- func (c *Client) GetBalance(ctx context.Context, addr ids.ShortID, assetID string, includePartial bool, ...) (*GetBalanceReply, error)deprecated
- func (c *Client) GetBlock(ctx context.Context, blkID ids.ID, options ...rpc.Option) ([]byte, error)
- func (c *Client) GetBlockByHeight(ctx context.Context, height uint64, options ...rpc.Option) ([]byte, error)
- func (c *Client) GetHeight(ctx context.Context, options ...rpc.Option) (uint64, error)
- func (c *Client) GetTx(ctx context.Context, txID ids.ID, options ...rpc.Option) ([]byte, error)
- func (c *Client) GetTxFee(ctx context.Context, options ...rpc.Option) (uint64, uint64, error)
- func (c *Client) GetTxStatus(ctx context.Context, txID ids.ID, options ...rpc.Option) (choices.Status, error)deprecated
- func (c *Client) GetUTXOs(ctx context.Context, addrs []ids.ShortID, limit uint32, ...) ([][]byte, ids.ShortID, ids.ID, error)
- func (c *Client) IssueTx(ctx context.Context, txBytes []byte, options ...rpc.Option) (ids.ID, error)
- type Config
- type CreateAssetArgs
- type CreateNFTAssetArgs
- type ExportArgs
- type ExportKeyArgs
- type ExportKeyReply
- type Factory
- type FormattedAssetID
- type Genesis
- type GenesisAsset
- type GenesisAssetDefinition
- type GenesisHolder
- type GenesisOwners
- type GetAddressTxsArgs
- type GetAddressTxsReply
- type GetAllBalancesArgs
- type GetAllBalancesReply
- type GetAssetDescriptionArgs
- type GetAssetDescriptionReply
- type GetBalanceArgs
- type GetBalanceReply
- type GetCurrentValidatorOutput
- type GetTxFeeReply
- type GetTxStatusReply
- type Holder
- type ImportArgs
- type ImportKeyArgs
- type ImportKeyReply
- type JSONChangeAddr
- type JSONFromAddrs
- type JSONSpendHeader
- type JSONTxIDChangeAddr
- type MintArgs
- type MintNFTArgs
- type Owners
- type SendArgs
- type SendMultipleArgs
- type SendNFTArgs
- type SendOutput
- type Service
- func (s *Service) CreateAddress(_ *http.Request, args *api.UserPass, reply *api.JSONAddress) error
- func (s *Service) CreateAsset(_ *http.Request, args *CreateAssetArgs, reply *AssetIDChangeAddr) error
- func (s *Service) CreateFixedCapAsset(r *http.Request, args *CreateAssetArgs, reply *AssetIDChangeAddr) error
- func (s *Service) CreateNFTAsset(_ *http.Request, args *CreateNFTAssetArgs, reply *AssetIDChangeAddr) error
- func (s *Service) CreateVariableCapAsset(r *http.Request, args *CreateAssetArgs, reply *AssetIDChangeAddr) error
- func (s *Service) Export(_ *http.Request, args *ExportArgs, reply *JSONTxIDChangeAddr) error
- func (s *Service) ExportKey(_ *http.Request, args *ExportKeyArgs, reply *ExportKeyReply) error
- func (s *Service) GetAddressTxs(_ *http.Request, args *GetAddressTxsArgs, reply *GetAddressTxsReply) error
- func (s *Service) GetAllBalances(_ *http.Request, args *GetAllBalancesArgs, reply *GetAllBalancesReply) error
- func (s *Service) GetAssetDescription(_ *http.Request, args *GetAssetDescriptionArgs, ...) error
- func (s *Service) GetBalance(_ *http.Request, args *GetBalanceArgs, reply *GetBalanceReply) error
- func (s *Service) GetBlock(_ *http.Request, args *api.GetBlockArgs, reply *api.GetBlockResponse) error
- func (s *Service) GetBlockByHeight(_ *http.Request, args *api.GetBlockByHeightArgs, reply *api.GetBlockResponse) error
- func (s *Service) GetHeight(_ *http.Request, _ *struct{}, reply *api.GetHeightResponse) error
- func (s *Service) GetTx(_ *http.Request, args *api.GetTxArgs, reply *api.GetTxReply) error
- func (s *Service) GetTxStatus(_ *http.Request, args *api.JSONTxID, reply *GetTxStatusReply) errordeprecated
- func (s *Service) GetUTXOs(_ *http.Request, args *api.GetUTXOsArgs, reply *api.GetUTXOsReply) error
- func (s *Service) Import(_ *http.Request, args *ImportArgs, reply *api.JSONTxID) error
- func (s *Service) ImportKey(_ *http.Request, args *ImportKeyArgs, reply *api.JSONAddress) error
- func (s *Service) IssueTx(_ *http.Request, args *api.FormattedTx, reply *api.JSONTxID) error
- func (s *Service) ListAddresses(_ *http.Request, args *api.UserPass, response *api.JSONAddresses) error
- func (s *Service) Mint(_ *http.Request, args *MintArgs, reply *JSONTxIDChangeAddr) error
- func (s *Service) MintNFT(_ *http.Request, args *MintNFTArgs, reply *JSONTxIDChangeAddr) error
- func (s *Service) Send(r *http.Request, args *SendArgs, reply *JSONTxIDChangeAddr) error
- func (s *Service) SendMultiple(_ *http.Request, args *SendMultipleArgs, reply *JSONTxIDChangeAddr) error
- func (s *Service) SendNFT(_ *http.Request, args *SendNFTArgs, reply *JSONTxIDChangeAddr) error
- type SharedMemory
- type StaticClient
- type StaticService
- type Tx
- func (tx *Tx) Accept(ctx context.Context) error
- func (tx *Tx) Bytes() []byte
- func (tx *Tx) Height() uint64
- func (tx *Tx) ID() ids.ID
- func (tx *Tx) MissingDependencies() (set.Set[ids.ID], error)
- func (tx *Tx) Parent() ids.ID
- func (tx *Tx) ParentIDs() []ids.ID
- func (*Tx) Reject(ctx context.Context) error
- func (tx *Tx) Status() choices.Status
- func (tx *Tx) Verify(ctx context.Context) error
- type VM
- func (vm *VM) BuildVertex(ctx context.Context) (dagvertex.Vertex, error)
- func (vm *VM) Clock() *mockable.Clock
- func (vm *VM) CodecRegistry() codec.Registry
- func (vm *VM) Connected(ctx context.Context, nodeID ids.NodeID, version *version.Application) error
- func (vm *VM) CreateHandlers(context.Context) (map[string]http.Handler, error)
- func (vm *VM) CreateStaticHandlers(context.Context) (map[string]http.Handler, error)
- func (vm *VM) Disconnected(ctx context.Context, nodeID ids.NodeID) error
- func (vm *VM) GetBlock(_ context.Context, blkID ids.ID) (chain.Block, error)
- func (vm *VM) GetBlockIDAtHeight(_ context.Context, height uint64) (ids.ID, error)
- func (vm *VM) GetEngine() dag.Engine
- func (vm *VM) GetTx(ctx context.Context, txID ids.ID) (dag.Transaction, error)
- func (vm *VM) GetVertex(ctx context.Context, vtxID ids.ID) (dagvertex.Vertex, error)
- func (*VM) HealthCheck(context.Context) (interface{}, error)
- func (vm *VM) Initialize(ctx context.Context, chainCtx interface{}, dbManager interface{}, ...) error
- func (vm *VM) LastAccepted(context.Context) (ids.ID, error)
- func (vm *VM) Linearize(ctx context.Context, stopVertexID ids.ID, toEngine chan<- engine.Message) error
- func (vm *VM) LoadUser(username string, password string, addresses set.Set[ids.ShortID]) ([]*lux.UTXO, *secp256k1fx.Keychain, error)
- func (vm *VM) Logger() log.Logger
- func (vm *VM) NewHTTPHandler(ctx context.Context) (http.Handler, error)
- func (vm *VM) ParseBlock(_ context.Context, blkBytes []byte) (chain.Block, error)
- func (vm *VM) ParseTx(_ context.Context, bytes []byte) (dag.Tx, error)
- func (vm *VM) ParseVertex(ctx context.Context, vtxBytes []byte) (dagvertex.Vertex, error)
- func (vm *VM) SetEngine(engine interface{})
- func (vm *VM) SetPreference(_ context.Context, blkID ids.ID) error
- func (vm *VM) SetState(_ context.Context, stateNum uint32) error
- func (vm *VM) Shutdown() error
- func (*VM) Version(context.Context) (string, error)
- func (vm *VM) WaitForEvent(ctx context.Context) (interface{}, error)
- type WalletClientdeprecated
- type WalletService
- func (w *WalletService) IssueTx(_ *http.Request, args *api.FormattedTx, reply *api.JSONTxID) error
- func (w *WalletService) Send(r *http.Request, args *SendArgs, reply *JSONTxIDChangeAddr) error
- func (w *WalletService) SendMultiple(_ *http.Request, args *SendMultipleArgs, reply *JSONTxIDChangeAddr) error
Constants ¶
This section is empty.
Variables ¶
var DefaultConfig = Config{ Network: network.DefaultConfig, ChecksumsEnabled: true, Config: config.Config{ TxFee: 1000, CreateAssetTxFee: 10000, }, }
var ErrRejected = errors.New("rejected")
Functions ¶
Types ¶
type AssetDefinition ¶
type AssetIDChangeAddr ¶
type AssetIDChangeAddr struct {
FormattedAssetID
JSONChangeAddr
}
AssetIDChangeAddr is an asset ID and a change address
type AssetInitialState ¶
type AssetInitialState struct {
FixedCap []GenesisHolder
VariableCap []GenesisOwners
}
AssetInitialState describes the initial state of an asset
type BuildGenesisArgs ¶
type BuildGenesisArgs struct {
NetworkID avajson.Uint32 `json:"networkID"`
GenesisData map[string]AssetDefinition `json:"genesisData"`
Encoding formatting.Encoding `json:"encoding"`
}
BuildGenesisArgs are arguments for BuildGenesis
type BuildGenesisReply ¶
type BuildGenesisReply struct {
Bytes string `json:"bytes"`
Encoding formatting.Encoding `json:"encoding"`
}
BuildGenesisReply is the reply from BuildGenesis
type Client ¶
type Client struct {
Requester rpc.EndpointRequester
}
Client for interacting with the Exchange VM (X-Chain)
func (*Client) GetAssetDescription ¶
func (c *Client) GetAssetDescription(ctx context.Context, assetID string, options ...rpc.Option) (*GetAssetDescriptionReply, error)
GetAssetDescription returns a description of assetID.
func (*Client) GetAtomicUTXOs ¶
func (c *Client) GetAtomicUTXOs( ctx context.Context, addrs []ids.ShortID, sourceChain string, limit uint32, startAddress ids.ShortID, startUTXOID ids.ID, options ...rpc.Option, ) ([][]byte, ids.ShortID, ids.ID, error)
GetAtomicUTXOs returns the byte representation of the atomic UTXOs controlled by addrs from sourceChain.
func (*Client) GetBalance
deprecated
func (c *Client) GetBalance( ctx context.Context, addr ids.ShortID, assetID string, includePartial bool, options ...rpc.Option, ) (*GetBalanceReply, error)
GetBalance returns the balance of assetID held by addr.
If includePartial is set, balance includes partial owned (i.e. in a multisig) funds.
Deprecated: GetUTXOs should be used instead.
func (*Client) GetBlockByHeight ¶
func (c *Client) GetBlockByHeight(ctx context.Context, height uint64, options ...rpc.Option) ([]byte, error)
GetBlockByHeight returns the block at the given height.
func (*Client) GetTxStatus
deprecated
type Config ¶
type Config struct {
Network network.Config `json:"network"`
ChecksumsEnabled bool `json:"checksumsEnabled"`
config.Config
}
func ParseConfig ¶
type CreateAssetArgs ¶
type CreateAssetArgs struct {
JSONSpendHeader // User, password, from addrs, change addr
Name string `json:"name"`
Symbol string `json:"symbol"`
Denomination byte `json:"denomination"`
InitialHolders []*Holder `json:"initialHolders"`
MinterSets []Owners `json:"minterSets"`
}
CreateAssetArgs are arguments for passing into CreateAsset
type CreateNFTAssetArgs ¶
type CreateNFTAssetArgs struct {
JSONSpendHeader // User, password, from addrs, change addr
Name string `json:"name"`
Symbol string `json:"symbol"`
MinterSets []Owners `json:"minterSets"`
}
CreateNFTAssetArgs are arguments for passing into CreateNFTAsset requests
type ExportArgs ¶
type ExportArgs struct {
// User, password, from addrs, change addr
JSONSpendHeader
// Amount of nLUX to send
Amount avajson.Uint64 `json:"amount"`
// Chain the funds are going to. Optional. Used if To address does not include the chainID.
TargetChain string `json:"targetChain"`
// ID of the address that will receive the LUX. This address may include the
// chainID, which is used to determine what the destination chain is.
To string `json:"to"`
AssetID string `json:"assetID"`
}
ExportArgs are arguments for passing into ExportAVA requests
type ExportKeyArgs ¶
ExportKeyArgs are arguments for ExportKey
type ExportKeyReply ¶
type ExportKeyReply struct {
// The decrypted PrivateKey for the Address provided in the arguments
PrivateKey *secp256k1.PrivateKey `json:"privateKey"`
}
ExportKeyReply is the response for ExportKey
type FormattedAssetID ¶
FormattedAssetID defines a JSON formatted struct containing an assetID as a string
type Genesis ¶
type Genesis struct {
Txs []*GenesisAsset `serialize:"true"`
}
Genesis represents the genesis state of the XVM
func NewGenesis ¶
func NewGenesis( networkID uint32, genesisData map[string]GenesisAssetDefinition, ) (*Genesis, error)
NewGenesis creates a new Genesis from genesis data
type GenesisAsset ¶
type GenesisAsset struct {
Alias string `serialize:"true"`
txs.CreateAssetTx `serialize:"true"`
}
GenesisAsset represents an asset in the genesis block
func (*GenesisAsset) Compare ¶
func (g *GenesisAsset) Compare(other *GenesisAsset) int
Compare implements utils.Sortable for GenesisAsset
type GenesisAssetDefinition ¶
type GenesisAssetDefinition struct {
Name string
Symbol string
Denomination byte
InitialState AssetInitialState
Memo []byte
}
GenesisAssetDefinition describes a genesis asset and its initial state
type GenesisHolder ¶
GenesisHolder describes how much asset is owned by an address
type GenesisOwners ¶
GenesisOwners describes who can perform an action
type GetAddressTxsArgs ¶
type GetAddressTxsReply ¶
type GetAllBalancesArgs ¶
type GetAllBalancesArgs struct {
api.JSONAddress
IncludePartial bool `json:"includePartial"`
}
type GetAllBalancesReply ¶
type GetAllBalancesReply struct {
Balances []Balance `json:"balances"`
}
GetAllBalancesReply is the response from a call to GetAllBalances
type GetAssetDescriptionArgs ¶
type GetAssetDescriptionArgs struct {
AssetID string `json:"assetID"`
}
GetAssetDescriptionArgs are arguments for passing into GetAssetDescription requests
type GetAssetDescriptionReply ¶
type GetAssetDescriptionReply struct {
FormattedAssetID
Name string `json:"name"`
Symbol string `json:"symbol"`
Denomination avajson.Uint8 `json:"denomination"`
}
GetAssetDescriptionReply defines the GetAssetDescription replies returned from the API
type GetBalanceArgs ¶
type GetBalanceArgs struct {
Address string `json:"address"`
AssetID string `json:"assetID"`
IncludePartial bool `json:"includePartial"`
}
GetBalanceArgs are arguments for passing into GetBalance requests
type GetBalanceReply ¶
type GetBalanceReply struct {
Balance avajson.Uint64 `json:"balance"`
UTXOIDs []lux.UTXOID `json:"utxoIDs"`
}
GetBalanceReply defines the GetBalance replies returned from the API
type GetCurrentValidatorOutput ¶
GetCurrentValidatorOutput represents current validator info
type GetTxFeeReply ¶
type GetTxFeeReply struct {
TxFee json.Uint64 `json:"txFee"`
CreateAssetTxFee json.Uint64 `json:"createAssetTxFee"`
}
GetTxFeeReply is the response from a GetTxFee call
type GetTxStatusReply ¶
GetTxStatusReply defines the GetTxStatus replies returned from the API
type ImportArgs ¶
type ImportArgs struct {
// User that controls To
api.UserPass
// Chain the funds are coming from
SourceChain string `json:"sourceChain"`
// Address receiving the imported LUX
To string `json:"to"`
}
ImportArgs are arguments for passing into Import requests
type ImportKeyArgs ¶
type ImportKeyArgs struct {
api.UserPass
PrivateKey *secp256k1.PrivateKey `json:"privateKey"`
}
ImportKeyArgs are arguments for ImportKey
type ImportKeyReply ¶
type ImportKeyReply struct {
// The address controlled by the PrivateKey provided in the arguments
Address string `json:"address"`
}
ImportKeyReply is the response for ImportKey
type JSONChangeAddr ¶
type JSONChangeAddr struct {
ChangeAddr string `json:"changeAddr"`
}
JSONChangeAddr contains the change address
type JSONFromAddrs ¶
type JSONFromAddrs struct {
From []string `json:"from"`
}
JSONFromAddrs contains the addresses to spend from
type JSONSpendHeader ¶
type JSONSpendHeader struct {
api.UserPass
JSONFromAddrs
JSONChangeAddr
}
JSONSpendHeader includes common fields for spend transactions
type JSONTxIDChangeAddr ¶
type JSONTxIDChangeAddr struct {
api.JSONTxID
JSONChangeAddr
}
JSONTxIDChangeAddr contains a transaction ID and a change address
type MintArgs ¶
type MintArgs struct {
JSONSpendHeader // User, password, from addrs, change addr
Amount avajson.Uint64 `json:"amount"`
AssetID string `json:"assetID"`
To string `json:"to"`
}
MintArgs are arguments for passing into Mint requests
type MintNFTArgs ¶
type MintNFTArgs struct {
JSONSpendHeader // User, password, from addrs, change addr
AssetID string `json:"assetID"`
Payload string `json:"payload"`
To string `json:"to"`
Encoding formatting.Encoding `json:"encoding"`
}
MintNFTArgs are arguments for passing into MintNFT requests
type Owners ¶
type Owners struct {
Threshold avajson.Uint32 `json:"threshold"`
Minters []string `json:"minters"`
}
Owners describes who can perform an action
type SendArgs ¶
type SendArgs struct {
// User, password, from addrs, change addr
JSONSpendHeader
// The amount, assetID, and destination to send funds to
SendOutput
// Memo field
Memo string `json:"memo"`
}
SendArgs are arguments for passing into Send requests
type SendMultipleArgs ¶
type SendMultipleArgs struct {
// User, password, from addrs, change addr
JSONSpendHeader
// The outputs of the transaction
Outputs []SendOutput `json:"outputs"`
// Memo field
Memo string `json:"memo"`
}
SendMultipleArgs are arguments for passing into SendMultiple requests
type SendNFTArgs ¶
type SendNFTArgs struct {
JSONSpendHeader // User, password, from addrs, change addr
AssetID string `json:"assetID"`
GroupID avajson.Uint32 `json:"groupID"`
To string `json:"to"`
}
SendNFTArgs are arguments for passing into SendNFT requests
type SendOutput ¶
type SendOutput struct {
// The amount of funds to send
Amount avajson.Uint64 `json:"amount"`
// ID of the asset being sent
AssetID string `json:"assetID"`
// Address of the recipient
To string `json:"to"`
}
SendOutput specifies that [Amount] of asset [AssetID] be sent to [To]
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service defines the base service for the asset vm
func (*Service) CreateAddress ¶
CreateAddress creates an address for the user [args.Username]
func (*Service) CreateAsset ¶
func (s *Service) CreateAsset(_ *http.Request, args *CreateAssetArgs, reply *AssetIDChangeAddr) error
CreateAsset returns ID of the newly created asset
func (*Service) CreateFixedCapAsset ¶
func (s *Service) CreateFixedCapAsset(r *http.Request, args *CreateAssetArgs, reply *AssetIDChangeAddr) error
CreateFixedCapAsset returns ID of the newly created asset
func (*Service) CreateNFTAsset ¶
func (s *Service) CreateNFTAsset(_ *http.Request, args *CreateNFTAssetArgs, reply *AssetIDChangeAddr) error
CreateNFTAsset returns ID of the newly created asset
func (*Service) CreateVariableCapAsset ¶
func (s *Service) CreateVariableCapAsset(r *http.Request, args *CreateAssetArgs, reply *AssetIDChangeAddr) error
CreateVariableCapAsset returns ID of the newly created asset
func (*Service) Export ¶
func (s *Service) Export(_ *http.Request, args *ExportArgs, reply *JSONTxIDChangeAddr) error
Export sends an asset from this chain to the P/C-Chain. After this tx is accepted, the LUX must be imported to the P/C-chain with an importTx. Returns the ID of the newly created atomic transaction
func (*Service) ExportKey ¶
func (s *Service) ExportKey(_ *http.Request, args *ExportKeyArgs, reply *ExportKeyReply) error
ExportKey returns a private key from the provided user
func (*Service) GetAddressTxs ¶
func (s *Service) GetAddressTxs(_ *http.Request, args *GetAddressTxsArgs, reply *GetAddressTxsReply) error
GetAddressTxs returns list of transactions for a given address
func (*Service) GetAllBalances ¶
func (s *Service) GetAllBalances(_ *http.Request, args *GetAllBalancesArgs, reply *GetAllBalancesReply) error
GetAllBalances returns a map where:
Key: ID of an asset such that [args.Address] has a non-zero balance of the asset Value: The balance of the asset held by the address
If ![args.IncludePartial], returns only unlocked balance/UTXOs with a 1-out-of-1 multisig. Otherwise, returned balance/UTXOs includes assets held only partially by the address, and includes balances with locktime in the future.
func (*Service) GetAssetDescription ¶
func (s *Service) GetAssetDescription(_ *http.Request, args *GetAssetDescriptionArgs, reply *GetAssetDescriptionReply) error
GetAssetDescription creates an empty account with the name passed in
func (*Service) GetBalance ¶
func (s *Service) GetBalance(_ *http.Request, args *GetBalanceArgs, reply *GetBalanceReply) error
GetBalance returns the balance of an asset held by an address. If ![args.IncludePartial], returns only the balance held solely (1 out of 1 multisig) by the address and with a locktime in the past. Otherwise, returned balance includes assets held only partially by the address, and includes balances with locktime in the future.
func (*Service) GetBlock ¶
func (s *Service) GetBlock(_ *http.Request, args *api.GetBlockArgs, reply *api.GetBlockResponse) error
GetBlock returns the requested block.
func (*Service) GetBlockByHeight ¶
func (s *Service) GetBlockByHeight(_ *http.Request, args *api.GetBlockByHeightArgs, reply *api.GetBlockResponse) error
GetBlockByHeight returns the block at the given height.
func (*Service) GetTxStatus
deprecated
func (*Service) GetUTXOs ¶
func (s *Service) GetUTXOs(_ *http.Request, args *api.GetUTXOsArgs, reply *api.GetUTXOsReply) error
GetUTXOs gets all utxos for passed in addresses
func (*Service) Import ¶
Import imports an asset to this chain from the P/C-Chain. The LUX must have already been exported from the P/C-Chain. Returns the ID of the newly created atomic transaction
func (*Service) ImportKey ¶
func (s *Service) ImportKey(_ *http.Request, args *ImportKeyArgs, reply *api.JSONAddress) error
ImportKey adds a private key to the provided user
func (*Service) ListAddresses ¶
func (s *Service) ListAddresses(_ *http.Request, args *api.UserPass, response *api.JSONAddresses) error
ListAddresses returns all of the addresses controlled by user [args.Username]
func (*Service) MintNFT ¶
func (s *Service) MintNFT(_ *http.Request, args *MintNFTArgs, reply *JSONTxIDChangeAddr) error
MintNFT issues a MintNFT transaction and returns the ID of the newly created transaction
func (*Service) SendMultiple ¶
func (s *Service) SendMultiple(_ *http.Request, args *SendMultipleArgs, reply *JSONTxIDChangeAddr) error
SendMultiple sends a transaction with multiple outputs.
func (*Service) SendNFT ¶
func (s *Service) SendNFT(_ *http.Request, args *SendNFTArgs, reply *JSONTxIDChangeAddr) error
SendNFT sends an NFT
type StaticClient ¶
type StaticClient interface {
BuildGenesis(ctx context.Context, args *BuildGenesisArgs, options ...rpc.Option) (*BuildGenesisReply, error)
}
StaticClient for interacting with the XVM static api
func NewStaticClient ¶
func NewStaticClient(uri string) StaticClient
NewClient returns an XVM client for interacting with the xvm static api
type StaticService ¶
type StaticService struct{}
StaticService defines the base service for the asset vm
func CreateStaticService ¶
func CreateStaticService() *StaticService
func (*StaticService) BuildGenesis ¶
func (*StaticService) BuildGenesis(_ *http.Request, args *BuildGenesisArgs, reply *BuildGenesisReply) error
BuildGenesis returns the UTXOs such that at least one address in [args.Addresses] is referenced in the UTXO.
type Tx ¶
type Tx struct {
// contains filtered or unexported fields
}
type VM ¶
type VM struct {
network.Atomic
config.Config
lux.AddressManager
ids.Aliaser
utxo.Spender
// Lock for thread safety (exposed for tests)
Lock sync.RWMutex
// Chain information
ChainID ids.ID
XChainID ids.ID
SharedMemory SharedMemory
// These values are only initialized after the chain has been linearized.
blockbuilder.Builder
// contains filtered or unexported fields
}
func (*VM) BuildVertex ¶
BuildVertex builds a new vertex - required for LinearizableVMWithEngine
func (*VM) CodecRegistry ¶
CodecRegistry returns the codec registry for marshalling/unmarshalling
func (*VM) CreateHandlers ¶
func (*VM) CreateStaticHandlers ¶
func (*VM) GetBlockIDAtHeight ¶
func (*VM) GetEngine ¶
GetEngine returns the consensus engine - required for LinearizableVMWithEngine
func (*VM) Initialize ¶
func (vm *VM) Initialize( ctx context.Context, chainCtx interface{}, dbManager interface{}, genesisBytes []byte, upgradeBytes []byte, configBytes []byte, toEngine chan<- interface{}, fxs []interface{}, appSender interface{}, ) error
Initialize with new signature for LinearizableVMWithEngine compatibility
func (*VM) LoadUser ¶
func (vm *VM) LoadUser( username string, password string, addresses set.Set[ids.ShortID], ) ([]*lux.UTXO, *secp256k1fx.Keychain, error)
LoadUser retrieves user keys from external storage
func (*VM) NewHTTPHandler ¶
NewHTTPHandler implements the engine.VM interface
func (*VM) ParseBlock ¶
func (*VM) ParseVertex ¶
ParseVertex parses vertex bytes - required for LinearizableVMWithEngine
type WalletClient
deprecated
type WalletClient struct {
Requester rpc.EndpointRequester
}
WalletClient for interacting with exchangevm managed wallet.
Deprecated: Transactions should be issued using the `luxfi/node/wallet/chain/x.Wallet` utility.
func NewWalletClient
deprecated
func NewWalletClient(uri, chain string) *WalletClient
NewWalletClient returns an Exchange VM wallet client for interacting with exchangevm managed wallet
Deprecated: Transactions should be issued using the `luxfi/node/wallet/chain/x.Wallet` utility.
type WalletService ¶
type WalletService struct {
// contains filtered or unexported fields
}
func (*WalletService) IssueTx ¶
func (w *WalletService) IssueTx(_ *http.Request, args *api.FormattedTx, reply *api.JSONTxID) error
IssueTx attempts to issue a transaction into consensus
func (*WalletService) Send ¶
func (w *WalletService) Send(r *http.Request, args *SendArgs, reply *JSONTxIDChangeAddr) error
Send returns the ID of the newly created transaction
func (*WalletService) SendMultiple ¶
func (w *WalletService) SendMultiple(_ *http.Request, args *SendMultipleArgs, reply *JSONTxIDChangeAddr) error
SendMultiple sends a transaction with multiple outputs.
Source Files
¶
Directories
¶
| Path | Synopsis |
|---|---|
|
Package block is a generated GoMock package.
|
Package block is a generated GoMock package. |
|
executor
Package executor is a generated GoMock package.
|
Package executor is a generated GoMock package. |
|
executor/executormock
Package executormock is a generated GoMock package.
|
Package executormock is a generated GoMock package. |
|
metricsmock
Package metricsmock is a generated GoMock package.
|
Package metricsmock is a generated GoMock package. |
|
Package state is a generated GoMock package.
|
Package state is a generated GoMock package. |
|
statemock
Package statemock is a generated GoMock package.
|
Package statemock is a generated GoMock package. |
|
Package txs is a generated GoMock package.
|
Package txs is a generated GoMock package. |
|
mempool
Package mempool is a generated GoMock package.
|
Package mempool is a generated GoMock package. |
|
mempool/mempoolmock
Package mempoolmock is a generated GoMock package.
|
Package mempoolmock is a generated GoMock package. |
|
txsmock
Package txsmock is a generated GoMock package.
|
Package txsmock is a generated GoMock package. |