ouroboros-network-api
Safe HaskellSafe-Inferred
LanguageHaskell2010

Ouroboros.Network.PeerSelection.PeerSharing

Synopsis

Documentation

data PeerSharing Source #

Is a peer willing to participate in Peer Sharing? If yes are others allowed to share this peer's address? Information about the node comes from the configuration file, while information about other nodes is received via handshake.

NOTE: This information is only useful if P2P flag is enabled.

Constructors

PeerSharingDisabled

Peer does not participate in Peer Sharing at all

PeerSharingEnabled

Peer participates in Peer Sharing

Instances

Instances details
Monoid PeerSharing Source #

The Monoid laws are witnessed by the following denotation function:

⟦_⟧ :: PeerSharing -> All ⟦ PeerSharingDisabled ⟧ = All False ⟦ PeerSharingEnabled ⟧ = All True

Instance details

Defined in Ouroboros.Network.PeerSelection.PeerSharing

Semigroup PeerSharing Source #

The combination of two PeerSharing values forms a Monoid where the unit is PeerSharingEnabled.

This operation is used in the connection handshake.

Instance details

Defined in Ouroboros.Network.PeerSelection.PeerSharing

Generic PeerSharing Source # 
Instance details

Defined in Ouroboros.Network.PeerSelection.PeerSharing

Associated Types

type Rep PeerSharing 
Instance details

Defined in Ouroboros.Network.PeerSelection.PeerSharing

type Rep PeerSharing = D1 ('MetaData "PeerSharing" "Ouroboros.Network.PeerSelection.PeerSharing" "ouroboros-network-api-0.9.0.1-inplace" 'False) (C1 ('MetaCons "PeerSharingDisabled" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PeerSharingEnabled" 'PrefixI 'False) (U1 :: Type -> Type))
Read PeerSharing Source # 
Instance details

Defined in Ouroboros.Network.PeerSelection.PeerSharing

Show PeerSharing Source # 
Instance details

Defined in Ouroboros.Network.PeerSelection.PeerSharing

Eq PeerSharing Source # 
Instance details

Defined in Ouroboros.Network.PeerSelection.PeerSharing

type Rep PeerSharing Source # 
Instance details

Defined in Ouroboros.Network.PeerSelection.PeerSharing

type Rep PeerSharing = D1 ('MetaData "PeerSharing" "Ouroboros.Network.PeerSelection.PeerSharing" "ouroboros-network-api-0.9.0.1-inplace" 'False) (C1 ('MetaCons "PeerSharingDisabled" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PeerSharingEnabled" 'PrefixI 'False) (U1 :: Type -> Type))