Module json_message_types

Source
Expand description

Objects for JSON serialization and deserialization in message bodies of the ZMQ pub/sub interface. Handles JSON for the following subscriptions:

  • json-full-txpool_add (Vec<TxPoolAdd>)
  • json-minimal-txpool_add (Vec<TxPoolAddMin>)
  • json-full-chain_main (Vec<ChainMain>)
  • json-minimal-chain_main (ChainMainMin)
  • json-full-miner_data (MinerData)

Structsยง

BulletproofPlus
Bulletproofs+ data used to validate the legitimacy of a Ring CT transaction.
ChainMain
ZMQ json-full-chain_main subscriber messages contain an array of ChainMain JSON objects. Each ChainMain object represents a new block. Push messages only contain more than one block if a re-org occurred.
ChainMainMin
ZMQ json-minimal-chain_main subscriber messages contain a single ChainMainMin JSON object. Unlike the full version, only the topmost block is sent in the case of a re-org.
Clsag
CLSAG signature fields
Encrypted
Holds the encrypted amount of a non-coinbase transaction output.
Gen
Additional namespace layer around the block height in ChainMain; gen is another name for a coinbase transaction
MinerData
ZMQ json-full-miner_data subscriber messages contain a single MinerData object that provides the necessary data to create a custom block template. There is no min version of this object.
MinerInput
Holds the block height of the coinbase transaction.
MinerTx
Part of the new block information in ChainMain
Output
Transaction output data used by both TxPoolAdd and MinerTx
PoolInput
Holds a single input for the TxPoolAdd inputs array.
PoolRingCt
Ring CT information used inside TxPoolAdd
Prunable
Data needed to validate a transaction that can optionally be pruned from older blocks.
ToKey
Same as PoolInput (adds an extra JSON name layer)
ToTaggedKey
Holds the public key of an output destination with its view tag.
TxBacklog
Holds a transaction entry in the MinerData tx_backlog field.
TxPoolAdd
ZMQ json-full-txpool_add packets contain an array of TxPoolAdd.
TxPoolAddMin
ZMQ json-minimal-txpool_add subscriber messages contain an array of TxPoolAddMin JSON objects. See TxPoolAdd for information on which transactions are published to subscribers.