Documentation
¶
Index ¶
- func DecoderCallback[T any](cb func(T)) func(gson []byte) error
- func DecoderFullChainMain(cb func([]FullChainMain)) func(gson []byte) error
- func DecoderFullMinerData(cb func(*FullMinerData)) func(gson []byte) error
- func DecoderFullTxPoolAdd(cb func([]FullTxPoolAdd)) func(gson []byte) error
- func DecoderMinimalChainMain(cb func(*MinimalChainMain)) func(gson []byte) error
- func DecoderMinimalTxPoolAdd(cb func(mempool.Mempool)) func(gson []byte) error
- type Client
- type FullChainMain
- type FullMinerData
- type FullTxPoolAdd
- type Listeners
- type MinimalChainMain
- type Topic
- type TxOutput
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DecoderCallback ¶ added in v4.6.0
func DecoderFullChainMain ¶ added in v4.6.0
func DecoderFullChainMain(cb func([]FullChainMain)) func(gson []byte) error
func DecoderFullMinerData ¶ added in v4.6.0
func DecoderFullMinerData(cb func(*FullMinerData)) func(gson []byte) error
func DecoderFullTxPoolAdd ¶ added in v4.6.0
func DecoderFullTxPoolAdd(cb func([]FullTxPoolAdd)) func(gson []byte) error
func DecoderMinimalChainMain ¶ added in v4.6.0
func DecoderMinimalChainMain(cb func(*MinimalChainMain)) func(gson []byte) error
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func NewClient ¶
NewClient instantiates a new client that will receive monerod's zmq events.
`topics` is a list of fully-formed zmq topic to subscribe to
`endpoint` is the full address where monerod has been configured to publish the messages to, including the network schama. for instance, considering that monerod has been started with
monerod --zmq-pub tcp://127.0.0.1:18085
`endpoint` should be 'tcp://127.0.0.1:18085'.
type FullChainMain ¶
type FullChainMain struct {
MajorVersion int `json:"major_version"`
MinorVersion int `json:"minor_version"`
Timestamp int64 `json:"timestamp"`
PrevID types.Hash `json:"prev_id"`
Nonce uint64 `json:"nonce"`
MinerTx struct {
Version int `json:"version"`
UnlockTime int64 `json:"unlock_time"`
Inputs []struct {
Gen struct {
Height uint64 `json:"height"`
} `json:"gen"`
} `json:"inputs"`
Outputs []TxOutput `json:"outputs"`
Extra string `json:"extra"`
Signatures []interface{} `json:"signatures"`
Ringct struct {
Type int `json:"type"`
Encrypted []interface{} `json:"encrypted"`
Commitments []interface{} `json:"commitments"`
Fee uint64 `json:"fee"`
} `json:"ringct"`
} `json:"miner_tx"`
TxHashes []types.Hash `json:"tx_hashes"`
}
type FullMinerData ¶
type FullMinerData struct {
MajorVersion uint8 `json:"major_version"`
Height uint64 `json:"height"`
PrevId types.Hash `json:"prev_id"`
SeedHash types.Hash `json:"seed_hash"`
Difficulty types.Difficulty `json:"difficulty"`
MedianWeight uint64 `json:"median_weight"`
AlreadyGeneratedCoins uint64 `json:"already_generated_coins"`
MedianTimestamp uint64 `json:"median_timestamp"`
TxBacklog []*mempool.Entry `json:"tx_backlog"`
}
type FullTxPoolAdd ¶
type FullTxPoolAdd struct {
Version int `json:"version"`
UnlockTime int64 `json:"unlock_time"`
Inputs []struct {
ToKey struct {
Amount uint64 `json:"amount"`
KeyOffsets []uint64 `json:"key_offsets"`
KeyImage types.Hash `json:"key_image"`
} `json:"to_key"`
} `json:"inputs"`
Outputs []TxOutput `json:"outputs"`
Extra string `json:"extra"`
Signatures []interface{} `json:"signatures"`
Ringct struct {
Type int `json:"type"`
Encrypted []struct {
Mask string `json:"mask"`
Amount string `json:"amount"`
} `json:"encrypted"`
Commitments []string `json:"commitments"`
Fee int `json:"fee"`
Prunable struct {
RangeProofs []any `json:"range_proofs"`
Bulletproofs []struct {
V []string `json:"V"`
AUpper string `json:"A"`
S string `json:"S"`
T1 string `json:"T1"`
T2 string `json:"T2"`
Taux string `json:"taux"`
Mu string `json:"mu"`
L []string `json:"L"`
R []string `json:"R"`
ALower string `json:"a"`
B string `json:"b"`
T string `json:"t"`
} `json:"bulletproofs"`
Mlsags []interface{} `json:"mlsags"`
PseudoOuts []string `json:"pseudo_outs"`
} `json:"prunable"`
} `json:"ringct"`
}
type MinimalChainMain ¶
type Topic ¶
type Topic string
const ( TopicUnknown Topic = "unknown" TopicMinimalTxPoolAdd Topic = "json-minimal-txpool_add" TopicFullTxPoolAdd Topic = "json-full-txpool_add" TopicMinimalChainMain Topic = "json-minimal-chain_main" TopicFullChainMain Topic = "json-full-chain_main" TopicFullMinerData Topic = "json-full-miner_data" )
type TxOutput ¶
type TxOutput struct {
Amount uint64 `json:"amount"`
ToKey *struct {
Key crypto.PublicKeyBytes `json:"key"`
} `json:"to_key,omitempty"`
ToTaggedKey *struct {
Key crypto.PublicKeyBytes `json:"key"`
ViewTag string `json:"view_tag"`
} `json:"to_tagged_key,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.