Documentation
¶
Index ¶
- Variables
- type ApplicationLog
- type Block
- type BlockMetadata
- type Candidate
- type FindStates
- type GetPeers
- type Header
- type Invoke
- type InvokeDiag
- type Iterator
- type KeyValue
- type NEP11AssetBalance
- type NEP11Balances
- type NEP11TokenBalance
- type NEP11Transfer
- type NEP11Transfers
- type NEP17Balance
- type NEP17Balances
- type NEP17Transfer
- type NEP17Transfers
- type NetworkFee
- type NotaryRequestEvent
- type Peer
- type Peers
- type ProofWithKey
- func (p *ProofWithKey) DecodeBinary(r *io.BinReader)
- func (p *ProofWithKey) EncodeBinary(w *io.BinWriter)
- func (p *ProofWithKey) FromString(s string) error
- func (p *ProofWithKey) MarshalJSON() ([]byte, error)
- func (p *ProofWithKey) String() string
- func (p *ProofWithKey) UnmarshalJSON(data []byte) error
- type Protocol
- type RawMempool
- type RelayResult
- type StateHeight
- type TransactionMetadata
- type TransactionOutputRaw
- type UnclaimedGas
- type ValidateAddress
- type Validator
- type VerifyProof
- type Version
Constants ¶
This section is empty.
Variables ¶
var KnownNEP11Properties = map[string]bool{ "description": true, "image": true, "name": true, "tokenURI": true, }
KnownNEP11Properties contains a list of well-known NEP-11 token property names.
Functions ¶
This section is empty.
Types ¶
type ApplicationLog ¶
type ApplicationLog struct {
Container util.Uint256
IsTransaction bool
Executions []state.Execution
}
ApplicationLog represent the results of the script executions for a block or a transaction.
func NewApplicationLog ¶
func NewApplicationLog(hash util.Uint256, aers []state.AppExecResult, trig trigger.Type) ApplicationLog
NewApplicationLog creates an ApplicationLog from a set of several application execution results including only the results with the specified trigger.
func (ApplicationLog) MarshalJSON ¶
func (l ApplicationLog) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaler interface.
func (*ApplicationLog) UnmarshalJSON ¶
func (l *ApplicationLog) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaler interface.
type Block ¶
type Block struct {
block.Block
BlockMetadata
}
Block wrapper used for the representation of block.Block / block.Base on the RPC Server.
func (Block) MarshalJSON ¶
MarshalJSON implements the json.Marshaler interface.
func (*Block) UnmarshalJSON ¶
UnmarshalJSON implements the json.Unmarshaler interface.
type BlockMetadata ¶
type BlockMetadata struct {
Size int `json:"size"`
NextBlockHash *util.Uint256 `json:"nextblockhash,omitempty"`
Confirmations uint32 `json:"confirmations"`
}
BlockMetadata is an additional metadata added to the standard block.Block.
type Candidate ¶
type Candidate struct {
PublicKey keys.PublicKey `json:"publickey"`
Votes int64 `json:"votes,string"`
Active bool `json:"active"`
}
Candidate represents a node participating in the governance elections, it's active when it's a validator (consensus node).
type FindStates ¶
type FindStates struct {
Results []KeyValue `json:"results"`
FirstProof *ProofWithKey `json:"firstProof,omitempty"`
LastProof *ProofWithKey `json:"lastProof,omitempty"`
Truncated bool `json:"truncated"`
}
type GetPeers ¶
type GetPeers struct {
Unconnected Peers `json:"unconnected"`
Connected Peers `json:"connected"`
Bad Peers `json:"bad"`
}
GetPeers payload for outputting peers in `getpeers` RPC call.
func (*GetPeers) AddConnected ¶
AddConnected adds a set of peers to the connected peers slice.
func (*GetPeers) AddUnconnected ¶
AddUnconnected adds a set of peers to the unconnected peers slice.
type Header ¶
type Header struct {
block.Header
BlockMetadata
}
Header wrapper used for a representation of the block header on the RPC Server.
func (Header) MarshalJSON ¶
MarshalJSON implements the json.Marshaler interface.
func (*Header) UnmarshalJSON ¶
UnmarshalJSON implements the json.Unmarshaler interface.
type Invoke ¶
type Invoke struct {
State string
GasConsumed int64
Script []byte
Stack []stackitem.Item
FaultException string
Notifications []state.NotificationEvent
Transaction *transaction.Transaction
Diagnostics *InvokeDiag
Session uuid.UUID
}
Invoke represents a code invocation result and is used by several RPC calls that invoke functions, scripts and generic bytecode.
func (Invoke) MarshalJSON ¶
MarshalJSON implements the json.Marshaler.
func (*Invoke) UnmarshalJSON ¶
UnmarshalJSON implements the json.Unmarshaler.
type InvokeDiag ¶
type InvokeDiag struct {
Changes []dboper.Operation `json:"storagechanges"`
Invocations []*invocations.Tree `json:"invokedcontracts"`
}
InvokeDiag is an additional diagnostic data for invocation.
type Iterator ¶
type Iterator struct {
// ID represents iterator ID. It is non-nil iff JSON-RPC server support session mechanism.
ID *uuid.UUID
// Values contains deserialized VM iterator values with a truncated flag. It is non-nil
// iff JSON-RPC server does not support sessions mechanism and able to traverse iterator.
Values []stackitem.Item
Truncated bool
}
Iterator represents VM iterator identifier. It either has ID set (for those JSON-RPC servers that support sessions) or non-nil Values and Truncated set (for those JSON-RPC servers that doesn't support sessions but perform in-place iterator traversing) or doesn't have ID, Values and Truncated set at all (for those JSON-RPC servers that doesn't support iterator sessions and doesn't perform in-place iterator traversing).
func (Iterator) MarshalJSON ¶
MarshalJSON implements the json.Marshaler.
func (*Iterator) UnmarshalJSON ¶
UnmarshalJSON implements the json.Unmarshaler.
type NEP11AssetBalance ¶
type NEP11AssetBalance struct {
Asset util.Uint160 `json:"assethash"`
Decimals int `json:"decimals,string"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Tokens []NEP11TokenBalance `json:"tokens"`
}
NEP11Balance is a structure holding balance of a NEP-11 asset.
type NEP11Balances ¶
type NEP11Balances struct {
Balances []NEP11AssetBalance `json:"balance"`
Address string `json:"address"`
}
NEP11Balances is a result for the getnep11balances RPC call.
type NEP11TokenBalance ¶
type NEP11TokenBalance struct {
ID string `json:"tokenid"`
Amount string `json:"amount"`
LastUpdated uint32 `json:"lastupdatedblock"`
}
NEP11TokenBalance represents balance of a single NFT.
type NEP11Transfer ¶
type NEP11Transfer struct {
Timestamp uint64 `json:"timestamp"`
Asset util.Uint160 `json:"assethash"`
Address string `json:"transferaddress,omitempty"`
ID string `json:"tokenid"`
Amount string `json:"amount"`
Index uint32 `json:"blockindex"`
NotifyIndex uint32 `json:"transfernotifyindex"`
TxHash util.Uint256 `json:"txhash"`
}
NEP11Transfer represents single NEP-11 transfer event.
type NEP11Transfers ¶
type NEP11Transfers struct {
Sent []NEP11Transfer `json:"sent"`
Received []NEP11Transfer `json:"received"`
Address string `json:"address"`
}
NEP11Transfers is a result for the getnep11transfers RPC.
type NEP17Balance ¶
type NEP17Balance struct {
Asset util.Uint160 `json:"assethash"`
Amount string `json:"amount"`
Decimals int `json:"decimals,string"`
LastUpdated uint32 `json:"lastupdatedblock"`
Name string `json:"name"`
Symbol string `json:"symbol"`
}
NEP17Balance represents balance for the single token contract.
type NEP17Balances ¶
type NEP17Balances struct {
Balances []NEP17Balance `json:"balance"`
Address string `json:"address"`
}
NEP17Balances is a result for the getnep17balances RPC call.
type NEP17Transfer ¶
type NEP17Transfer struct {
Timestamp uint64 `json:"timestamp"`
Asset util.Uint160 `json:"assethash"`
Address string `json:"transferaddress,omitempty"`
Amount string `json:"amount"`
Index uint32 `json:"blockindex"`
NotifyIndex uint32 `json:"transfernotifyindex"`
TxHash util.Uint256 `json:"txhash"`
}
NEP17Transfer represents single NEP17 transfer event.
type NEP17Transfers ¶
type NEP17Transfers struct {
Sent []NEP17Transfer `json:"sent"`
Received []NEP17Transfer `json:"received"`
Address string `json:"address"`
}
NEP17Transfers is a result for the getnep17transfers RPC.
type NetworkFee ¶
type NetworkFee struct {
Value int64 `json:"networkfee,string"`
}
NetworkFee represents a result of calculatenetworkfee RPC call.
type NotaryRequestEvent ¶
type NotaryRequestEvent struct {
Type mempoolevent.Type `json:"type"`
NotaryRequest *payload.P2PNotaryRequest `json:"notaryrequest"`
}
NotaryRequestEvent represents a P2PNotaryRequest event either added or removed from the notary payload pool.
type ProofWithKey ¶
ProofWithKey represens a key-proof pair.
func (*ProofWithKey) DecodeBinary ¶
func (p *ProofWithKey) DecodeBinary(r *io.BinReader)
DecodeBinary implements io.Serializable.
func (*ProofWithKey) EncodeBinary ¶
func (p *ProofWithKey) EncodeBinary(w *io.BinWriter)
EncodeBinary implements io.Serializable.
func (*ProofWithKey) FromString ¶
func (p *ProofWithKey) FromString(s string) error
FromString decodes p from hex-encoded string.
func (*ProofWithKey) MarshalJSON ¶
func (p *ProofWithKey) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaler.
func (*ProofWithKey) String ¶
func (p *ProofWithKey) String() string
String implements fmt.Stringer.
func (*ProofWithKey) UnmarshalJSON ¶
func (p *ProofWithKey) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaler.
type Protocol ¶
type Protocol struct {
AddressVersion byte
Network netmode.Magic
MillisecondsPerBlock int
MaxTraceableBlocks uint32
MaxValidUntilBlockIncrement uint32
MaxTransactionsPerBlock uint16
MemoryPoolMaxTransactions int
ValidatorsCount byte
InitialGasDistribution fixedn.Fixed8
// CommitteeHistory stores height:size map of the committee size.
CommitteeHistory map[uint32]int
// P2PSigExtensions is true when Notary subsystem is enabled on the network.
P2PSigExtensions bool
// StateRootInHeader is true if state root is contained in block header.
StateRootInHeader bool
// ValidatorsHistory stores height:size map of the validators count.
ValidatorsHistory map[uint32]int
}
Protocol represents network-dependent parameters.
type RawMempool ¶
type RawMempool struct {
Height uint32 `json:"height"`
Verified []util.Uint256 `json:"verified"`
Unverified []util.Uint256 `json:"unverified"`
}
RawMempool represents a result of getrawmempool RPC call.
type RelayResult ¶
RelayResult ia a result of `sendrawtransaction` or `submitblock` RPC calls.
type StateHeight ¶
type StateHeight struct {
Local uint32 `json:"localrootindex"`
Validated uint32 `json:"validatedrootindex"`
}
StateHeight is a result of getstateheight RPC.
type TransactionMetadata ¶
type TransactionMetadata struct {
Blockhash util.Uint256 `json:"blockhash,omitempty"`
Confirmations int `json:"confirmations,omitempty"`
Timestamp uint64 `json:"blocktime,omitempty"`
VMState string `json:"vmstate,omitempty"`
}
TransactionMetadata is an auxiliary struct for proper TransactionOutputRaw marshaling.
type TransactionOutputRaw ¶
type TransactionOutputRaw struct {
transaction.Transaction
TransactionMetadata
}
TransactionOutputRaw is used as a wrapper to represents a Transaction.
func (TransactionOutputRaw) MarshalJSON ¶
func (t TransactionOutputRaw) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaler interface.
func (*TransactionOutputRaw) UnmarshalJSON ¶
func (t *TransactionOutputRaw) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Marshaler interface.
type UnclaimedGas ¶
UnclaimedGas response wrapper.
func (UnclaimedGas) MarshalJSON ¶
func (g UnclaimedGas) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaler interface.
func (*UnclaimedGas) UnmarshalJSON ¶
func (g *UnclaimedGas) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaler interface.
type ValidateAddress ¶
type ValidateAddress struct {
Address interface{} `json:"address"`
IsValid bool `json:"isvalid"`
}
ValidateAddress represents a result of the `validateaddress` call. Notice that Address is an interface{} here because the server echoes back whatever address value a user has sent to it, even if it's not a string.
type Validator ¶
Validator is used for the representation of consensus node data in the JSON-RPC protocol.
func (*Validator) UnmarshalJSON ¶
UnmarshalJSON implements the json.Unmarshaler interface.
type VerifyProof ¶
type VerifyProof struct {
Value []byte
}
VerifyProof is a result of verifyproof RPC. nil Value is considered invalid.
func (*VerifyProof) MarshalJSON ¶
func (p *VerifyProof) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaler.
func (*VerifyProof) UnmarshalJSON ¶
func (p *VerifyProof) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaler.
type Version ¶
type Version struct {
// Magic contains network magic.
// Deprecated: use Protocol.Network instead
Magic netmode.Magic
TCPPort uint16
WSPort uint16
Nonce uint32
UserAgent string
Protocol Protocol
// StateRootInHeader is true if state root is contained in the block header.
// Deprecated: use Protocol.StateRootInHeader instead
StateRootInHeader bool
}
Version model used for reporting server version info.
func (*Version) MarshalJSON ¶
MarshalJSON implements the json marshaller interface.
func (*Version) UnmarshalJSON ¶
UnmarshalJSON implements the json unmarshaller interface.