ouroboros-consensus-0.1.0.1: Consensus layer for the Ouroboros blockchain protocol
Safe Haskell None
Language Haskell2010

Ouroboros.Consensus.Node.Run

Description

Infrastructure required to run a node

The definitions in this module are independent from any specific protocol.

Synopsis

SerialiseDisk

SerialiseNodeToNode

class ( ConvertRawHash blk, SerialiseNodeToNode blk blk, SerialiseNodeToNode blk ( Header blk), SerialiseNodeToNode blk ( Serialised blk), SerialiseNodeToNode blk ( SerialisedHeader blk), SerialiseNodeToNode blk ( GenTx blk), SerialiseNodeToNode blk ( GenTxId blk)) => SerialiseNodeToNodeConstraints blk where Source #

Serialisation constraints needed by the node-to-node protocols

Methods

estimateBlockSize :: Header blk -> SizeInBytes Source #

An upper bound on the size in bytes of the block corresponding to the header. This can be an overestimate, but not an underestimate.

The block fetch client uses this to estimate how bytes will be in flight. This is also used to limit the number of bytes accepted when downloading a block.

This is part of this class as it depends on the node-to-node serialisation format used for blocks.

SerialiseNodeToClient

RunNode