decentralized-message-queue
Safe HaskellNone
LanguageHaskell2010

DMQ.Protocol.SigSubmission.Type

Synopsis

Data types

newtype SigHash Source #

Constructors

SigHash 

Instances

Instances details
Show SigHash Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

Eq SigHash Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

Methods

(==) :: SigHash -> SigHash -> Bool #

(/=) :: SigHash -> SigHash -> Bool #

Ord SigHash Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

newtype SigId Source #

Constructors

SigId 

Fields

Instances

Instances details
Show SigId Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

Methods

showsPrec :: Int -> SigId -> ShowS #

show :: SigId -> String #

showList :: [SigId] -> ShowS #

Eq SigId Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

Methods

(==) :: SigId -> SigId -> Bool #

(/=) :: SigId -> SigId -> Bool #

Ord SigId Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

Methods

compare :: SigId -> SigId -> Ordering #

(<) :: SigId -> SigId -> Bool #

(<=) :: SigId -> SigId -> Bool #

(>) :: SigId -> SigId -> Bool #

(>=) :: SigId -> SigId -> Bool #

max :: SigId -> SigId -> SigId #

min :: SigId -> SigId -> SigId #

ShowProxy SigId Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

newtype SigBody Source #

Constructors

SigBody 

Instances

Instances details
Show SigBody Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

Eq SigBody Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

Methods

(==) :: SigBody -> SigBody -> Bool #

(/=) :: SigBody -> SigBody -> Bool #

data Sig Source #

Sig type consists of payload and its KES signature.

Constructors

SigRaw SigPayload SigKesSignature 

Bundled Patterns

pattern Sig :: SigId -> SigBody -> POSIXTime -> SigOpCertificate -> SigKesSignature -> Sig

A convenient bidirectional pattern synonym for the Sig type.

Instances

Instances details
Show Sig Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

Methods

showsPrec :: Int -> Sig -> ShowS #

show :: Sig -> String #

showList :: [Sig] -> ShowS #

Eq Sig Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

Methods

(==) :: Sig -> Sig -> Bool #

(/=) :: Sig -> Sig -> Bool #

ShowProxy Sig Source # 
Instance details

Defined in DMQ.Protocol.SigSubmission.Type

Methods

showProxy :: Proxy Sig -> String #

TxSubmission mini-protocol

data family Message ps (st :: ps) (st' :: ps) #

The messages for this protocol. It is expected to be a GADT that is indexed by the from and to protocol states. That is the protocol state the message transitions from, and the protocol state it transitions into. These are the edges of the protocol state transition system.

Instances

Instances details
(NFData vNumber, NFData vParams) => NFData (Message (Handshake vNumber vParams) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.Handshake.Type

Methods

rnf :: Message (Handshake vNumber vParams) from to -> () #

(NFData block, NFData point) => NFData (Message (BlockFetch block point) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.BlockFetch.Type

Methods

rnf :: Message (BlockFetch block point) from to -> () #

(NFData header, NFData point, NFData tip) => NFData (Message (ChainSync header point tip) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.ChainSync.Type

Methods

rnf :: Message (ChainSync header point tip) from to -> () #

NFData (Message KeepAlive from to) 
Instance details

Defined in Ouroboros.Network.Protocol.KeepAlive.Type

Methods

rnf :: Message KeepAlive from to -> () #

(forall result. NFData (query result), NFData point) => NFData (Message (LocalStateQuery block point query) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.LocalStateQuery.Type

Methods

rnf :: Message (LocalStateQuery block point query) from to -> () #

(NFData txid, NFData tx, NFData slot) => NFData (Message (LocalTxMonitor txid tx slot) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxMonitor.Type

Methods

rnf :: Message (LocalTxMonitor txid tx slot) from to -> () #

(NFData tx, NFData reject) => NFData (Message (LocalTxSubmission tx reject) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

rnf :: Message (LocalTxSubmission tx reject) from to -> () #

NFData peerAddress => NFData (Message (PeerSharing peerAddress) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.PeerSharing.Type

Methods

rnf :: Message (PeerSharing peerAddress) from to -> () #

(NFData txid, NFData tx) => NFData (Message (TxSubmission2 txid tx) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Methods

rnf :: Message (TxSubmission2 txid tx) from to -> () #

(Show vNumber, Show vParams) => Show (Message (Handshake vNumber vParams) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.Handshake.Type

Methods

showsPrec :: Int -> Message (Handshake vNumber vParams) from to -> ShowS #

show :: Message (Handshake vNumber vParams) from to -> String #

showList :: [Message (Handshake vNumber vParams) from to] -> ShowS #

(Show block, Show point) => Show (Message (BlockFetch block point) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.BlockFetch.Type

Methods

showsPrec :: Int -> Message (BlockFetch block point) from to -> ShowS #

show :: Message (BlockFetch block point) from to -> String #

showList :: [Message (BlockFetch block point) from to] -> ShowS #

(Show header, Show point, Show tip) => Show (Message (ChainSync header point tip) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.ChainSync.Type

Methods

showsPrec :: Int -> Message (ChainSync header point tip) from to -> ShowS #

show :: Message (ChainSync header point tip) from to -> String #

showList :: [Message (ChainSync header point tip) from to] -> ShowS #

Show (Message KeepAlive from to) 
Instance details

Defined in Ouroboros.Network.Protocol.KeepAlive.Type

Methods

showsPrec :: Int -> Message KeepAlive from to -> ShowS #

show :: Message KeepAlive from to -> String #

showList :: [Message KeepAlive from to] -> ShowS #

(Show txid, Show tx, Show slot) => Show (Message (LocalTxMonitor txid tx slot) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxMonitor.Type

Methods

showsPrec :: Int -> Message (LocalTxMonitor txid tx slot) from to -> ShowS #

show :: Message (LocalTxMonitor txid tx slot) from to -> String #

showList :: [Message (LocalTxMonitor txid tx slot) from to] -> ShowS #

(Show tx, Show reject) => Show (Message (LocalTxSubmission tx reject) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

showsPrec :: Int -> Message (LocalTxSubmission tx reject) from to -> ShowS #

show :: Message (LocalTxSubmission tx reject) from to -> String #

showList :: [Message (LocalTxSubmission tx reject) from to] -> ShowS #

Show peer => Show (Message (PeerSharing peer) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.PeerSharing.Type

Methods

showsPrec :: Int -> Message (PeerSharing peer) from to -> ShowS #

show :: Message (PeerSharing peer) from to -> String #

showList :: [Message (PeerSharing peer) from to] -> ShowS #

(Show txid, Show tx) => Show (Message (TxSubmission2 txid tx) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Methods

showsPrec :: Int -> Message (TxSubmission2 txid tx) from to -> ShowS #

show :: Message (TxSubmission2 txid tx) from to -> String #

showList :: [Message (TxSubmission2 txid tx) from to] -> ShowS #

(Eq tx, Eq reject) => Eq (Message (LocalTxSubmission tx reject) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

Methods

(==) :: Message (LocalTxSubmission tx reject) from to -> Message (LocalTxSubmission tx reject) from to -> Bool #

(/=) :: Message (LocalTxSubmission tx reject) from to -> Message (LocalTxSubmission tx reject) from to -> Bool #

(Eq txid, Eq tx) => Eq (Message (TxSubmission2 txid tx) from to) 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Methods

(==) :: Message (TxSubmission2 txid tx) from to -> Message (TxSubmission2 txid tx) from to -> Bool #

(/=) :: Message (TxSubmission2 txid tx) from to -> Message (TxSubmission2 txid tx) from to -> Bool #

data Message KeepAlive (from :: KeepAlive) (to :: KeepAlive) 
Instance details

Defined in Ouroboros.Network.Protocol.KeepAlive.Type

data Message (PeerSharing peerAddress) (from :: PeerSharing peerAddress) (to :: PeerSharing peerAddress) 
Instance details

Defined in Ouroboros.Network.Protocol.PeerSharing.Type

data Message (PeerSharing peerAddress) (from :: PeerSharing peerAddress) (to :: PeerSharing peerAddress) where
data Message (BlockFetch block point) (from :: BlockFetch block point) (to :: BlockFetch block point) 
Instance details

Defined in Ouroboros.Network.Protocol.BlockFetch.Type

data Message (BlockFetch block point) (from :: BlockFetch block point) (to :: BlockFetch block point) where
data Message (LocalTxSubmission tx reject) (from :: LocalTxSubmission tx reject) (to :: LocalTxSubmission tx reject) 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxSubmission.Type

data Message (LocalTxSubmission tx reject) (from :: LocalTxSubmission tx reject) (to :: LocalTxSubmission tx reject) where
data Message (TxSubmission2 txid tx) (from :: TxSubmission2 txid tx) (to :: TxSubmission2 txid tx) 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

data Message (TxSubmission2 txid tx) (from :: TxSubmission2 txid tx) (to :: TxSubmission2 txid tx) where
data Message (ChainSync header point tip) (from :: ChainSync header point tip) (to :: ChainSync header point tip) 
Instance details

Defined in Ouroboros.Network.Protocol.ChainSync.Type

data Message (ChainSync header point tip) (from :: ChainSync header point tip) (to :: ChainSync header point tip) where
data Message (LocalStateQuery block point query) (from :: LocalStateQuery block point query) (to :: LocalStateQuery block point query) 
Instance details

Defined in Ouroboros.Network.Protocol.LocalStateQuery.Type

data Message (LocalStateQuery block point query) (from :: LocalStateQuery block point query) (to :: LocalStateQuery block point query) where
data Message (LocalTxMonitor txid tx slot) (from :: LocalTxMonitor txid tx slot) (to :: LocalTxMonitor txid tx slot) 
Instance details

Defined in Ouroboros.Network.Protocol.LocalTxMonitor.Type

data Message (LocalTxMonitor txid tx slot) (from :: LocalTxMonitor txid tx slot) (to :: LocalTxMonitor txid tx slot) where
data Message (Handshake vNumber vParams) (from :: Handshake vNumber vParams) (to :: Handshake vNumber vParams) 
Instance details

Defined in Ouroboros.Network.Protocol.Handshake.Type

data Message (Handshake vNumber vParams) (from :: Handshake vNumber vParams) (to :: Handshake vNumber vParams) where

newtype SizeInBytes #

Constructors

SizeInBytes 

Instances

Instances details
NFData SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Methods

rnf :: SizeInBytes -> () #

Monoid SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Semigroup SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Bounded SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Enum SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Generic SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Associated Types

type Rep SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

type Rep SizeInBytes = D1 ('MetaData "SizeInBytes" "Ouroboros.Network.SizeInBytes" "ouroboros-network-api-0.16.0.0-inplace" 'True) (C1 ('MetaCons "SizeInBytes" 'PrefixI 'True) (S1 ('MetaSel ('Just "getSizeInBytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))
Num SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Integral SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Real SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Show SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Eq SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Ord SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

BoundedMeasure SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

Measure SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

NoThunks SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

type Rep SizeInBytes 
Instance details

Defined in Ouroboros.Network.SizeInBytes

type Rep SizeInBytes = D1 ('MetaData "SizeInBytes" "Ouroboros.Network.SizeInBytes" "ouroboros-network-api-0.16.0.0-inplace" 'True) (C1 ('MetaCons "SizeInBytes" 'PrefixI 'True) (S1 ('MetaSel ('Just "getSizeInBytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))

newtype NumTxIdsToReq #

Constructors

NumTxIdsToReq 

Instances

Instances details
NFData NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Methods

rnf :: NumTxIdsToReq -> () #

Monoid NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Semigroup NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Bounded NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Enum NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Generic NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Associated Types

type Rep NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

type Rep NumTxIdsToReq = D1 ('MetaData "NumTxIdsToReq" "Ouroboros.Network.Protocol.TxSubmission2.Type" "ouroboros-network-protocols-0.15.0.0-inplace" 'True) (C1 ('MetaCons "NumTxIdsToReq" 'PrefixI 'True) (S1 ('MetaSel ('Just "getNumTxIdsToReq") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16)))
Num NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Integral NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Real NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Show NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Eq NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Ord NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

NoThunks NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

type Rep NumTxIdsToReq 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

type Rep NumTxIdsToReq = D1 ('MetaData "NumTxIdsToReq" "Ouroboros.Network.Protocol.TxSubmission2.Type" "ouroboros-network-protocols-0.15.0.0-inplace" 'True) (C1 ('MetaCons "NumTxIdsToReq" 'PrefixI 'True) (S1 ('MetaSel ('Just "getNumTxIdsToReq") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16)))

pattern StDone :: TxSubmission2 txid tx #

Nobody has agency; termination state.

pattern StIdle :: TxSubmission2 txid tx #

The server (inbound side) has agency; it can either terminate, ask for transaction identifiers or ask for transactions.

There is no timeout in this state.

pattern StInit :: TxSubmission2 txid tx #

Initial protocol message.

pattern StTxIds :: StBlockingStyle -> TxSubmission2 txid tx #

The client (outbound side) has agency; it must reply with a list of transaction identifiers that it wishes to submit.

There are two sub-states for this, for blocking and non-blocking cases.

pattern StTxs :: TxSubmission2 txid tx #

The client (outbound side) has agency; it must reply with the list of transactions.

data SingTxSubmission (k :: TxSubmission2 txid tx) where #

Constructors

SingInit :: forall {txid} {tx}. SingTxSubmission ('StInit :: TxSubmission2 txid tx) 
SingIdle :: forall {txid} {tx}. SingTxSubmission ('StIdle :: TxSubmission2 txid tx) 
SingTxIds :: forall {txid} {tx} (stBlocking :: StBlockingStyle). SingBlockingStyle stBlocking -> SingTxSubmission ('StTxIds stBlocking :: TxSubmission2 txid tx) 
SingTxs :: forall {txid} {tx}. SingTxSubmission ('StTxs :: TxSubmission2 txid tx) 
SingDone :: forall {txid} {tx}. SingTxSubmission ('StDone :: TxSubmission2 txid tx) 

Instances

Instances details
Show (SingTxSubmission k) 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

data BlockingReplyList (blocking :: StBlockingStyle) a where #

We have requests for lists of things. In the blocking case the corresponding reply must be non-empty, whereas in the non-blocking case and empty reply is fine.

Constructors

BlockingReply :: forall a. NonEmpty a -> BlockingReplyList 'StBlocking a 
NonBlockingReply :: forall a. [a] -> BlockingReplyList 'StNonBlocking a 

Instances

Instances details
Foldable (BlockingReplyList blocking) 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Methods

fold :: Monoid m => BlockingReplyList blocking m -> m #

foldMap :: Monoid m => (a -> m) -> BlockingReplyList blocking a -> m #

foldMap' :: Monoid m => (a -> m) -> BlockingReplyList blocking a -> m #

foldr :: (a -> b -> b) -> b -> BlockingReplyList blocking a -> b #

foldr' :: (a -> b -> b) -> b -> BlockingReplyList blocking a -> b #

foldl :: (b -> a -> b) -> b -> BlockingReplyList blocking a -> b #

foldl' :: (b -> a -> b) -> b -> BlockingReplyList blocking a -> b #

foldr1 :: (a -> a -> a) -> BlockingReplyList blocking a -> a #

foldl1 :: (a -> a -> a) -> BlockingReplyList blocking a -> a #

toList :: BlockingReplyList blocking a -> [a] #

null :: BlockingReplyList blocking a -> Bool #

length :: BlockingReplyList blocking a -> Int #

elem :: Eq a => a -> BlockingReplyList blocking a -> Bool #

maximum :: Ord a => BlockingReplyList blocking a -> a #

minimum :: Ord a => BlockingReplyList blocking a -> a #

sum :: Num a => BlockingReplyList blocking a -> a #

product :: Num a => BlockingReplyList blocking a -> a #

NFData a => NFData (BlockingReplyList blocking a) 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Methods

rnf :: BlockingReplyList blocking a -> () #

Show a => Show (BlockingReplyList blocking a) 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Methods

showsPrec :: Int -> BlockingReplyList blocking a -> ShowS #

show :: BlockingReplyList blocking a -> String #

showList :: [BlockingReplyList blocking a] -> ShowS #

Eq a => Eq (BlockingReplyList blocking a) 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Methods

(==) :: BlockingReplyList blocking a -> BlockingReplyList blocking a -> Bool #

(/=) :: BlockingReplyList blocking a -> BlockingReplyList blocking a -> Bool #

newtype NumTxIdsToAck #

Constructors

NumTxIdsToAck 

Instances

Instances details
NFData NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Methods

rnf :: NumTxIdsToAck -> () #

Monoid NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Semigroup NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Bounded NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Enum NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Generic NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Associated Types

type Rep NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

type Rep NumTxIdsToAck = D1 ('MetaData "NumTxIdsToAck" "Ouroboros.Network.Protocol.TxSubmission2.Type" "ouroboros-network-protocols-0.15.0.0-inplace" 'True) (C1 ('MetaCons "NumTxIdsToAck" 'PrefixI 'True) (S1 ('MetaSel ('Just "getNumTxIdsToAck") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16)))
Num NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Integral NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Real NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Show NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Eq NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Ord NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

NoThunks NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

type Rep NumTxIdsToAck 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

type Rep NumTxIdsToAck = D1 ('MetaData "NumTxIdsToAck" "Ouroboros.Network.Protocol.TxSubmission2.Type" "ouroboros-network-protocols-0.15.0.0-inplace" 'True) (C1 ('MetaCons "NumTxIdsToAck" 'PrefixI 'True) (S1 ('MetaSel ('Just "getNumTxIdsToAck") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16)))

data SingBlockingStyle (k :: StBlockingStyle) where #

The value level equivalent of BlockingStyle.

This is also used in MsgRequestTxIds where it is interpreted (and can be encoded) as a Bool with True for blocking, and False for non-blocking.

data StBlockingStyle where #

Constructors

StBlocking :: StBlockingStyle

In this sub-state the reply need not be prompt. There is no timeout.

StNonBlocking :: StBlockingStyle

In this state the peer must reply. There is a timeout.

Instances

Instances details
SingI 'StBlocking 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

Methods

sing :: Sing 'StBlocking #

SingI 'StNonBlocking 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type

type Sing 
Instance details

Defined in Ouroboros.Network.Protocol.TxSubmission2.Type