typed-protocols-examples
Safe HaskellNone
LanguageHaskell2010

Network.TypedProtocol.ReqResp2.Type

Documentation

data ReqResp2 (req :: k) (resp :: k1) where Source #

Constructors

StIdle :: forall {k} {k1} (req :: k) (resp :: k1). ReqResp2 req resp 
StBusy :: forall {k} {k1} (req :: k) (resp :: k1). ReqResp2 req resp 
StBusy' :: forall {k} {k1} (req :: k) (resp :: k1). ReqResp2 req resp 
StDone :: forall {k} {k1} (req :: k) (resp :: k1). ReqResp2 req resp 

Instances

Instances details
(Show req, Show resp) => Show (Message (ReqResp2 req resp) from to) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

Methods

showsPrec :: Int -> Message (ReqResp2 req resp) from to -> ShowS #

show :: Message (ReqResp2 req resp) from to -> String #

showList :: [Message (ReqResp2 req resp) from to] -> ShowS #

(Eq req, Eq resp) => Eq (Message (ReqResp2 req resp) from to) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

Methods

(==) :: Message (ReqResp2 req resp) from to -> Message (ReqResp2 req resp) from to -> Bool #

(/=) :: Message (ReqResp2 req resp) from to -> Message (ReqResp2 req resp) from to -> Bool #

Protocol (ReqResp2 req resp) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

Associated Types

type StateToken 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

type StateToken = SReqResp2 :: ReqResp2 req resp -> Type
StateTokenI ('StBusy :: ReqResp2 req resp) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

Methods

stateToken :: StateToken ('StBusy :: ReqResp2 req resp) #

StateTokenI ('StBusy' :: ReqResp2 req resp) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

Methods

stateToken :: StateToken ('StBusy' :: ReqResp2 req resp) #

StateTokenI ('StDone :: ReqResp2 req resp) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

Methods

stateToken :: StateToken ('StDone :: ReqResp2 req resp) #

StateTokenI ('StIdle :: ReqResp2 req resp) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

Methods

stateToken :: StateToken ('StIdle :: ReqResp2 req resp) #

data Message (ReqResp2 req resp) (from :: ReqResp2 req resp) (to :: ReqResp2 req resp) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

data Message (ReqResp2 req resp) (from :: ReqResp2 req resp) (to :: ReqResp2 req resp) where
type StateToken Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

type StateToken = SReqResp2 :: ReqResp2 req resp -> Type
type StateAgency ('StBusy :: ReqResp2 req resp) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

type StateAgency ('StBusy :: ReqResp2 req resp) = 'ServerAgency
type StateAgency ('StBusy' :: ReqResp2 req resp) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

type StateAgency ('StBusy' :: ReqResp2 req resp) = 'ServerAgency
type StateAgency ('StDone :: ReqResp2 req resp) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

type StateAgency ('StDone :: ReqResp2 req resp) = 'NobodyAgency
type StateAgency ('StIdle :: ReqResp2 req resp) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

type StateAgency ('StIdle :: ReqResp2 req resp) = 'ClientAgency

data SReqResp2 (st :: ReqResp2 req resp) where Source #

Constructors

SingIdle :: forall {k} {k1} {req :: k} {resp :: k1}. SReqResp2 ('StIdle :: ReqResp2 req resp) 
SingBusy :: forall {k} {k1} {req :: k} {resp :: k1}. SReqResp2 ('StBusy :: ReqResp2 req resp) 
SingBusy' :: forall {k} {k1} {req :: k} {resp :: k1}. SReqResp2 ('StBusy' :: ReqResp2 req resp) 
SingDone :: forall {k} {k1} {req :: k} {resp :: k1}. SReqResp2 ('StDone :: ReqResp2 req resp) 

Instances

Instances details
Show (SReqResp2 st) Source # 
Instance details

Defined in Network.TypedProtocol.ReqResp2.Type

Methods

showsPrec :: Int -> SReqResp2 st -> ShowS #

show :: SReqResp2 st -> String #

showList :: [SReqResp2 st] -> ShowS #