ouroboros-consensus
Safe HaskellNone
LanguageHaskell2010

Ouroboros.Consensus.MiniProtocol.BlockFetch.ClientInterface

Description

Initialization of the BlockFetchConsensusInterface

Synopsis

Documentation

data ChainDbView (m ∷ TypeType) blk Source #

Abstract over the ChainDB

Constructors

ChainDbView 

Fields

defaultChainDbView ∷ ∀ (m ∷ TypeType) blk. ChainDB m blk → ChainDbView m blk Source #

mkBlockFetchConsensusInterface Source #

Arguments

∷ ∀ (m ∷ TypeType) peer blk. (IOLike m, BlockSupportsDiffusionPipelining blk, Ord peer, LedgerSupportsProtocol blk, ConfigSupportsNode blk) 
Tracer m (TraceEventDbf peer) 
BlockConfig blk 
ChainDbView m blk 
ChainSyncClientHandleCollection peer m blk 
→ (Header blk → SizeInBytes) 
STM m FetchMode

See readFetchMode.

DiffusionPipeliningSupport 
→ BlockFetchConsensusInterface peer (HeaderWithTime blk) blk m 

readFetchModeDefault ∷ ∀ (m ∷ TypeType) blk. (MonadSTM m, HasHeader blk) ⇒ ConsensusMode → BlockchainTime m → STM m (AnchoredFragment blk) → STM m UseBootstrapPeers → STM m LedgerStateJudgement → STM m FetchMode Source #