ouroboros-network:cardano-diffusion
Safe HaskellNone
LanguageHaskell2010

Cardano.Network.PeerSelection.PublicRootPeers

Synopsis

Documentation

type CardanoPublicRootPeers peeraddr = PublicRootPeers (ExtraPeers peeraddr) peeraddr Source #

merge :: Ord peeraddr => CardanoPublicRootPeers peeraddr -> CardanoPublicRootPeers peeraddr -> CardanoPublicRootPeers peeraddr Source #

fromMapAndSet Source #

Arguments

:: Ord peeraddr 
=> Map peeraddr PeerAdvertise

public configured root peers

-> Set peeraddr

bootstrap peers

-> Set peeraddr

ledger peers

-> Set peeraddr

big ledger peers

-> CardanoPublicRootPeers peeraddr 

Preserves PublicRootPeers invariant. If the two sets are not disjoint, removes the common ones from the bootstrap peers set since its the most sensitive set.

insertBootstrapPeer :: Ord peeraddr => peeraddr -> CardanoPublicRootPeers peeraddr -> CardanoPublicRootPeers peeraddr Source #

insertLedgerPeer :: Ord peeraddr => peeraddr -> CardanoPublicRootPeers peeraddr -> CardanoPublicRootPeers peeraddr Source #

insertBigLedgerPeer :: Ord peeraddr => peeraddr -> CardanoPublicRootPeers peeraddr -> CardanoPublicRootPeers peeraddr Source #

Orphan instances

Ord peeraddr => Monoid (CardanoPublicRootPeers peeraddr) Source # 
Instance details

Ord peeraddr => Semigroup (CardanoPublicRootPeers peeraddr) Source # 
Instance details