cardano-diffusion:protocols
Safe HaskellNone
LanguageHaskell2010

Cardano.Network.Protocol.Handshake.Codec

Synopsis

Documentation

nodeToNodeHandshakeCodec :: forall (m :: Type -> Type). MonadST m => Codec (Handshake NodeToNodeVersion Term) DeserialiseFailure m ByteString Source #

Handshake codec for the node-to-node protocol suite.

nodeToClientHandshakeCodec :: forall (m :: Type -> Type). MonadST m => Codec (Handshake NodeToClientVersion Term) DeserialiseFailure m ByteString Source #

Handshake codec for the node-to-client protocol suite.

byteLimitsHandshake :: forall {k} (vNumber :: k). ProtocolSizeLimits (Handshake vNumber Term) ByteString #

cborTermVersionDataCodec :: (vNumber -> CodecCBORTerm Text vData) -> VersionDataCodec Term vNumber vData #

decodeRefuseReason :: Show failure => CodecCBORTerm (failure, Maybe Int) vNumber -> Decoder s (RefuseReason vNumber) #

encodeRefuseReason :: CodecCBORTerm fail vNumber -> RefuseReason vNumber -> Encoding #

noTimeLimitsHandshake :: forall {k} (vNumber :: k). ProtocolTimeLimits (Handshake vNumber Term) #

timeLimitsHandshake :: forall {k} (vNumber :: k). ProtocolTimeLimits (Handshake vNumber Term) #

data VersionDataCodec bytes vNumber vData #

Constructors

VersionDataCodec 

Fields