Documentation ¶
Overview ¶
Package frostfs contains RPC wrappers for FrostFS contract.
Index ¶
- type Actor
- type AlphabetUpdateEvent
- type BindEvent
- type ChequeEvent
- type Contract
- func (c *Contract) Bind(user []byte, keys []any) (util.Uint256, uint32, error)
- func (c *Contract) BindTransaction(user []byte, keys []any) (*transaction.Transaction, error)
- func (c *Contract) BindUnsigned(user []byte, keys []any) (*transaction.Transaction, error)
- func (c *Contract) Cheque(id []byte, user util.Uint160, amount *big.Int, lockAcc []byte) (util.Uint256, uint32, error)
- func (c *Contract) ChequeTransaction(id []byte, user util.Uint160, amount *big.Int, lockAcc []byte) (*transaction.Transaction, error)
- func (c *Contract) ChequeUnsigned(id []byte, user util.Uint160, amount *big.Int, lockAcc []byte) (*transaction.Transaction, error)
- func (c *Contract) InnerRingCandidateAdd(key *keys.PublicKey) (util.Uint256, uint32, error)
- func (c *Contract) InnerRingCandidateAddTransaction(key *keys.PublicKey) (*transaction.Transaction, error)
- func (c *Contract) InnerRingCandidateAddUnsigned(key *keys.PublicKey) (*transaction.Transaction, error)
- func (c *Contract) InnerRingCandidateRemove(key *keys.PublicKey) (util.Uint256, uint32, error)
- func (c *Contract) InnerRingCandidateRemoveTransaction(key *keys.PublicKey) (*transaction.Transaction, error)
- func (c *Contract) InnerRingCandidateRemoveUnsigned(key *keys.PublicKey) (*transaction.Transaction, error)
- func (c *Contract) SetConfig(id []byte, key []byte, val []byte) (util.Uint256, uint32, error)
- func (c *Contract) SetConfigTransaction(id []byte, key []byte, val []byte) (*transaction.Transaction, error)
- func (c *Contract) SetConfigUnsigned(id []byte, key []byte, val []byte) (*transaction.Transaction, error)
- func (c *Contract) Unbind(user []byte, keys []any) (util.Uint256, uint32, error)
- func (c *Contract) UnbindTransaction(user []byte, keys []any) (*transaction.Transaction, error)
- func (c *Contract) UnbindUnsigned(user []byte, keys []any) (*transaction.Transaction, error)
- func (c *Contract) Update(script []byte, manifest []byte, data any) (util.Uint256, uint32, error)
- func (c *Contract) UpdateTransaction(script []byte, manifest []byte, data any) (*transaction.Transaction, error)
- func (c *Contract) UpdateUnsigned(script []byte, manifest []byte, data any) (*transaction.Transaction, error)
- func (c *Contract) Withdraw(user util.Uint160, amount *big.Int) (util.Uint256, uint32, error)
- func (c *Contract) WithdrawTransaction(user util.Uint160, amount *big.Int) (*transaction.Transaction, error)
- func (c *Contract) WithdrawUnsigned(user util.Uint160, amount *big.Int) (*transaction.Transaction, error)
- type ContractReader
- type DepositEvent
- type Invoker
- type SetConfigEvent
- type UnbindEvent
- type WithdrawEvent
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Actor ¶
type Actor interface { Invoker MakeCall(contract util.Uint160, method string, params ...any) (*transaction.Transaction, error) MakeRun(script []byte) (*transaction.Transaction, error) MakeUnsignedCall(contract util.Uint160, method string, attrs []transaction.Attribute, params ...any) (*transaction.Transaction, error) MakeUnsignedRun(script []byte, attrs []transaction.Attribute) (*transaction.Transaction, error) SendCall(contract util.Uint160, method string, params ...any) (util.Uint256, uint32, error) SendRun(script []byte) (util.Uint256, uint32, error) }
Actor is used by Contract to call state-changing methods.
type AlphabetUpdateEvent ¶
AlphabetUpdateEvent represents "AlphabetUpdate" event emitted by the contract.
func AlphabetUpdateEventsFromApplicationLog ¶
func AlphabetUpdateEventsFromApplicationLog(log *result.ApplicationLog) ([]*AlphabetUpdateEvent, error)
AlphabetUpdateEventsFromApplicationLog retrieves a set of all emitted events with "AlphabetUpdate" name from the provided result.ApplicationLog.
func (*AlphabetUpdateEvent) FromStackItem ¶
func (e *AlphabetUpdateEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to AlphabetUpdateEvent or returns an error if it's not possible to do to so.
type BindEvent ¶
BindEvent represents "Bind" event emitted by the contract.
func BindEventsFromApplicationLog ¶
func BindEventsFromApplicationLog(log *result.ApplicationLog) ([]*BindEvent, error)
BindEventsFromApplicationLog retrieves a set of all emitted events with "Bind" name from the provided result.ApplicationLog.
func (*BindEvent) FromStackItem ¶
FromStackItem converts provided stackitem.Array to BindEvent or returns an error if it's not possible to do to so.
type ChequeEvent ¶
ChequeEvent represents "Cheque" event emitted by the contract.
func ChequeEventsFromApplicationLog ¶
func ChequeEventsFromApplicationLog(log *result.ApplicationLog) ([]*ChequeEvent, error)
ChequeEventsFromApplicationLog retrieves a set of all emitted events with "Cheque" name from the provided result.ApplicationLog.
func (*ChequeEvent) FromStackItem ¶
func (e *ChequeEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to ChequeEvent or returns an error if it's not possible to do to so.
type Contract ¶
type Contract struct { ContractReader // contains filtered or unexported fields }
Contract implements all contract methods.
func (*Contract) Bind ¶
Bind creates a transaction invoking `bind` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) BindTransaction ¶
func (c *Contract) BindTransaction(user []byte, keys []any) (*transaction.Transaction, error)
BindTransaction creates a transaction invoking `bind` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) BindUnsigned ¶
func (c *Contract) BindUnsigned(user []byte, keys []any) (*transaction.Transaction, error)
BindUnsigned creates a transaction invoking `bind` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) Cheque ¶
func (c *Contract) Cheque(id []byte, user util.Uint160, amount *big.Int, lockAcc []byte) (util.Uint256, uint32, error)
Cheque creates a transaction invoking `cheque` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) ChequeTransaction ¶
func (c *Contract) ChequeTransaction(id []byte, user util.Uint160, amount *big.Int, lockAcc []byte) (*transaction.Transaction, error)
ChequeTransaction creates a transaction invoking `cheque` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) ChequeUnsigned ¶
func (c *Contract) ChequeUnsigned(id []byte, user util.Uint160, amount *big.Int, lockAcc []byte) (*transaction.Transaction, error)
ChequeUnsigned creates a transaction invoking `cheque` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) InnerRingCandidateAdd ¶
InnerRingCandidateAdd creates a transaction invoking `innerRingCandidateAdd` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) InnerRingCandidateAddTransaction ¶
func (c *Contract) InnerRingCandidateAddTransaction(key *keys.PublicKey) (*transaction.Transaction, error)
InnerRingCandidateAddTransaction creates a transaction invoking `innerRingCandidateAdd` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) InnerRingCandidateAddUnsigned ¶
func (c *Contract) InnerRingCandidateAddUnsigned(key *keys.PublicKey) (*transaction.Transaction, error)
InnerRingCandidateAddUnsigned creates a transaction invoking `innerRingCandidateAdd` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) InnerRingCandidateRemove ¶
InnerRingCandidateRemove creates a transaction invoking `innerRingCandidateRemove` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) InnerRingCandidateRemoveTransaction ¶
func (c *Contract) InnerRingCandidateRemoveTransaction(key *keys.PublicKey) (*transaction.Transaction, error)
InnerRingCandidateRemoveTransaction creates a transaction invoking `innerRingCandidateRemove` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) InnerRingCandidateRemoveUnsigned ¶
func (c *Contract) InnerRingCandidateRemoveUnsigned(key *keys.PublicKey) (*transaction.Transaction, error)
InnerRingCandidateRemoveUnsigned creates a transaction invoking `innerRingCandidateRemove` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) SetConfig ¶
SetConfig creates a transaction invoking `setConfig` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) SetConfigTransaction ¶
func (c *Contract) SetConfigTransaction(id []byte, key []byte, val []byte) (*transaction.Transaction, error)
SetConfigTransaction creates a transaction invoking `setConfig` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) SetConfigUnsigned ¶
func (c *Contract) SetConfigUnsigned(id []byte, key []byte, val []byte) (*transaction.Transaction, error)
SetConfigUnsigned creates a transaction invoking `setConfig` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) Unbind ¶
Unbind creates a transaction invoking `unbind` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) UnbindTransaction ¶
func (c *Contract) UnbindTransaction(user []byte, keys []any) (*transaction.Transaction, error)
UnbindTransaction creates a transaction invoking `unbind` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) UnbindUnsigned ¶
func (c *Contract) UnbindUnsigned(user []byte, keys []any) (*transaction.Transaction, error)
UnbindUnsigned creates a transaction invoking `unbind` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) Update ¶
Update creates a transaction invoking `update` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) UpdateTransaction ¶
func (c *Contract) UpdateTransaction(script []byte, manifest []byte, data any) (*transaction.Transaction, error)
UpdateTransaction creates a transaction invoking `update` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) UpdateUnsigned ¶
func (c *Contract) UpdateUnsigned(script []byte, manifest []byte, data any) (*transaction.Transaction, error)
UpdateUnsigned creates a transaction invoking `update` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) Withdraw ¶
Withdraw creates a transaction invoking `withdraw` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) WithdrawTransaction ¶
func (c *Contract) WithdrawTransaction(user util.Uint160, amount *big.Int) (*transaction.Transaction, error)
WithdrawTransaction creates a transaction invoking `withdraw` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) WithdrawUnsigned ¶
func (c *Contract) WithdrawUnsigned(user util.Uint160, amount *big.Int) (*transaction.Transaction, error)
WithdrawUnsigned creates a transaction invoking `withdraw` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
type ContractReader ¶
type ContractReader struct {
// contains filtered or unexported fields
}
ContractReader implements safe contract methods.
func NewReader ¶
func NewReader(invoker Invoker, hash util.Uint160) *ContractReader
NewReader creates an instance of ContractReader using provided contract hash and the given Invoker.
func (*ContractReader) Config ¶
func (c *ContractReader) Config(key []byte) (any, error)
Config invokes `config` method of contract.
func (*ContractReader) InnerRingCandidates ¶
func (c *ContractReader) InnerRingCandidates() ([]stackitem.Item, error)
InnerRingCandidates invokes `innerRingCandidates` method of contract.
func (*ContractReader) ListConfig ¶
func (c *ContractReader) ListConfig() ([]stackitem.Item, error)
ListConfig invokes `listConfig` method of contract.
type DepositEvent ¶
type DepositEvent struct { From util.Uint160 Amount *big.Int Receiver util.Uint160 TxHash util.Uint256 }
DepositEvent represents "Deposit" event emitted by the contract.
func DepositEventsFromApplicationLog ¶
func DepositEventsFromApplicationLog(log *result.ApplicationLog) ([]*DepositEvent, error)
DepositEventsFromApplicationLog retrieves a set of all emitted events with "Deposit" name from the provided result.ApplicationLog.
func (*DepositEvent) FromStackItem ¶
func (e *DepositEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to DepositEvent or returns an error if it's not possible to do to so.
type Invoker ¶
type Invoker interface {
Call(contract util.Uint160, operation string, params ...any) (*result.Invoke, error)
}
Invoker is used by ContractReader to call various safe methods.
type SetConfigEvent ¶
SetConfigEvent represents "SetConfig" event emitted by the contract.
func SetConfigEventsFromApplicationLog ¶
func SetConfigEventsFromApplicationLog(log *result.ApplicationLog) ([]*SetConfigEvent, error)
SetConfigEventsFromApplicationLog retrieves a set of all emitted events with "SetConfig" name from the provided result.ApplicationLog.
func (*SetConfigEvent) FromStackItem ¶
func (e *SetConfigEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to SetConfigEvent or returns an error if it's not possible to do to so.
type UnbindEvent ¶
UnbindEvent represents "Unbind" event emitted by the contract.
func UnbindEventsFromApplicationLog ¶
func UnbindEventsFromApplicationLog(log *result.ApplicationLog) ([]*UnbindEvent, error)
UnbindEventsFromApplicationLog retrieves a set of all emitted events with "Unbind" name from the provided result.ApplicationLog.
func (*UnbindEvent) FromStackItem ¶
func (e *UnbindEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to UnbindEvent or returns an error if it's not possible to do to so.
type WithdrawEvent ¶
WithdrawEvent represents "Withdraw" event emitted by the contract.
func WithdrawEventsFromApplicationLog ¶
func WithdrawEventsFromApplicationLog(log *result.ApplicationLog) ([]*WithdrawEvent, error)
WithdrawEventsFromApplicationLog retrieves a set of all emitted events with "Withdraw" name from the provided result.ApplicationLog.
func (*WithdrawEvent) FromStackItem ¶
func (e *WithdrawEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to WithdrawEvent or returns an error if it's not possible to do to so.