websockets-rpc-0.6.0: Simple streaming RPC mechanism using WebSockets

Safe HaskellNone
LanguageHaskell2010

Network.WebSockets.RPC.Types

Contents

Synopsis

Documentation

data RPCID Source #

Unique identifier for an RPC session

Instances

Bounded RPCID Source # 
Enum RPCID Source # 
Eq RPCID Source # 

Methods

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

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

Data RPCID Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RPCID -> c RPCID #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RPCID #

toConstr :: RPCID -> Constr #

dataTypeOf :: RPCID -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c RPCID) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RPCID) #

gmapT :: (forall b. Data b => b -> b) -> RPCID -> RPCID #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RPCID -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RPCID -> r #

gmapQ :: (forall d. Data d => d -> u) -> RPCID -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> RPCID -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> RPCID -> m RPCID #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RPCID -> m RPCID #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RPCID -> m RPCID #

Num RPCID Source # 
Ord RPCID Source # 

Methods

compare :: RPCID -> RPCID -> Ordering #

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

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

(>) :: RPCID -> RPCID -> Bool #

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

max :: RPCID -> RPCID -> RPCID #

min :: RPCID -> RPCID -> RPCID #

Read RPCID Source # 
Show RPCID Source # 

Methods

showsPrec :: Int -> RPCID -> ShowS #

show :: RPCID -> String #

showList :: [RPCID] -> ShowS #

Generic RPCID Source # 

Associated Types

type Rep RPCID :: * -> * #

Methods

from :: RPCID -> Rep RPCID x #

to :: Rep RPCID x -> RPCID #

Arbitrary RPCID Source # 

Methods

arbitrary :: Gen RPCID #

shrink :: RPCID -> [RPCID] #

CoArbitrary RPCID Source # 

Methods

coarbitrary :: RPCID -> Gen b -> Gen b #

ToJSON RPCID Source # 
FromJSON RPCID Source # 
type Rep RPCID Source # 
type Rep RPCID = D1 (MetaData "RPCID" "Network.WebSockets.RPC.Types" "websockets-rpc-0.6.0-Bvy6xnnJ8kALWZvC58himH" True) (C1 (MetaCons "RPCID" PrefixI True) (S1 (MetaSel (Just Symbol "getRPCID") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int)))

RPC Methods

data RPCIdentified a Source #

Constructors

RPCIdentified 

Fields

Instances

Eq a => Eq (RPCIdentified a) Source # 
Data a => Data (RPCIdentified a) Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RPCIdentified a -> c (RPCIdentified a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (RPCIdentified a) #

toConstr :: RPCIdentified a -> Constr #

dataTypeOf :: RPCIdentified a -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c (RPCIdentified a)) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (RPCIdentified a)) #

gmapT :: (forall b. Data b => b -> b) -> RPCIdentified a -> RPCIdentified a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RPCIdentified a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RPCIdentified a -> r #

gmapQ :: (forall d. Data d => d -> u) -> RPCIdentified a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> RPCIdentified a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> RPCIdentified a -> m (RPCIdentified a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RPCIdentified a -> m (RPCIdentified a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RPCIdentified a -> m (RPCIdentified a) #

Read a => Read (RPCIdentified a) Source # 
Show a => Show (RPCIdentified a) Source # 
Generic (RPCIdentified a) Source # 

Associated Types

type Rep (RPCIdentified a) :: * -> * #

Arbitrary a => Arbitrary (RPCIdentified a) Source # 
ToJSON a => ToJSON (RPCIdentified a) Source # 
FromJSON a => FromJSON (RPCIdentified a) Source # 
type Rep (RPCIdentified a) Source # 
type Rep (RPCIdentified a) = D1 (MetaData "RPCIdentified" "Network.WebSockets.RPC.Types" "websockets-rpc-0.6.0-Bvy6xnnJ8kALWZvC58himH" False) (C1 (MetaCons "RPCIdentified" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_ident") SourceUnpack SourceStrict DecidedStrict) (Rec0 RPCID)) (S1 (MetaSel (Just Symbol "_params") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 a))))

newtype Subscribe a Source #

Constructors

Subscribe (RPCIdentified a) 

Instances

Eq a => Eq (Subscribe a) Source # 

Methods

(==) :: Subscribe a -> Subscribe a -> Bool #

(/=) :: Subscribe a -> Subscribe a -> Bool #

Data a => Data (Subscribe a) Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Subscribe a -> c (Subscribe a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Subscribe a) #

toConstr :: Subscribe a -> Constr #

dataTypeOf :: Subscribe a -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c (Subscribe a)) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Subscribe a)) #

gmapT :: (forall b. Data b => b -> b) -> Subscribe a -> Subscribe a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Subscribe a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Subscribe a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Subscribe a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Subscribe a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Subscribe a -> m (Subscribe a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Subscribe a -> m (Subscribe a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Subscribe a -> m (Subscribe a) #

Read a => Read (Subscribe a) Source # 
Show a => Show (Subscribe a) Source # 
Generic (Subscribe a) Source # 

Associated Types

type Rep (Subscribe a) :: * -> * #

Methods

from :: Subscribe a -> Rep (Subscribe a) x #

to :: Rep (Subscribe a) x -> Subscribe a #

Arbitrary a => Arbitrary (Subscribe a) Source # 

Methods

arbitrary :: Gen (Subscribe a) #

shrink :: Subscribe a -> [Subscribe a] #

ToJSON a => ToJSON (Subscribe a) Source # 
FromJSON a => FromJSON (Subscribe a) Source # 
type Rep (Subscribe a) Source # 
type Rep (Subscribe a) = D1 (MetaData "Subscribe" "Network.WebSockets.RPC.Types" "websockets-rpc-0.6.0-Bvy6xnnJ8kALWZvC58himH" True) (C1 (MetaCons "Subscribe" PrefixI True) (S1 (MetaSel (Just Symbol "getSubscribe") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (RPCIdentified a))))

newtype Supply a Source #

Nothing means the RPC is canceled

Constructors

Supply 

Instances

Eq a => Eq (Supply a) Source # 

Methods

(==) :: Supply a -> Supply a -> Bool #

(/=) :: Supply a -> Supply a -> Bool #

Data a => Data (Supply a) Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Supply a -> c (Supply a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Supply a) #

toConstr :: Supply a -> Constr #

dataTypeOf :: Supply a -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c (Supply a)) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Supply a)) #

gmapT :: (forall b. Data b => b -> b) -> Supply a -> Supply a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Supply a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Supply a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Supply a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Supply a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Supply a -> m (Supply a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Supply a -> m (Supply a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Supply a -> m (Supply a) #

Read a => Read (Supply a) Source # 
Show a => Show (Supply a) Source # 

Methods

showsPrec :: Int -> Supply a -> ShowS #

show :: Supply a -> String #

showList :: [Supply a] -> ShowS #

Generic (Supply a) Source # 

Associated Types

type Rep (Supply a) :: * -> * #

Methods

from :: Supply a -> Rep (Supply a) x #

to :: Rep (Supply a) x -> Supply a #

Arbitrary a => Arbitrary (Supply a) Source # 

Methods

arbitrary :: Gen (Supply a) #

shrink :: Supply a -> [Supply a] #

ToJSON a => ToJSON (Supply a) Source # 
FromJSON a => FromJSON (Supply a) Source # 
type Rep (Supply a) Source # 
type Rep (Supply a) = D1 (MetaData "Supply" "Network.WebSockets.RPC.Types" "websockets-rpc-0.6.0-Bvy6xnnJ8kALWZvC58himH" True) (C1 (MetaCons "Supply" PrefixI True) (S1 (MetaSel (Just Symbol "getSupply") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (RPCIdentified (Maybe a)))))

newtype Reply a Source #

Constructors

Reply (RPCIdentified a) 

Instances

Eq a => Eq (Reply a) Source # 

Methods

(==) :: Reply a -> Reply a -> Bool #

(/=) :: Reply a -> Reply a -> Bool #

Data a => Data (Reply a) Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Reply a -> c (Reply a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Reply a) #

toConstr :: Reply a -> Constr #

dataTypeOf :: Reply a -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c (Reply a)) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Reply a)) #

gmapT :: (forall b. Data b => b -> b) -> Reply a -> Reply a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Reply a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Reply a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Reply a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Reply a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Reply a -> m (Reply a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Reply a -> m (Reply a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Reply a -> m (Reply a) #

Read a => Read (Reply a) Source # 
Show a => Show (Reply a) Source # 

Methods

showsPrec :: Int -> Reply a -> ShowS #

show :: Reply a -> String #

showList :: [Reply a] -> ShowS #

Generic (Reply a) Source # 

Associated Types

type Rep (Reply a) :: * -> * #

Methods

from :: Reply a -> Rep (Reply a) x #

to :: Rep (Reply a) x -> Reply a #

Arbitrary a => Arbitrary (Reply a) Source # 

Methods

arbitrary :: Gen (Reply a) #

shrink :: Reply a -> [Reply a] #

ToJSON a => ToJSON (Reply a) Source # 
FromJSON a => FromJSON (Reply a) Source # 
type Rep (Reply a) Source # 
type Rep (Reply a) = D1 (MetaData "Reply" "Network.WebSockets.RPC.Types" "websockets-rpc-0.6.0-Bvy6xnnJ8kALWZvC58himH" True) (C1 (MetaCons "Reply" PrefixI True) (S1 (MetaSel (Just Symbol "getReply") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (RPCIdentified a))))

newtype Complete a Source #

Constructors

Complete (RPCIdentified a) 

Instances

Eq a => Eq (Complete a) Source # 

Methods

(==) :: Complete a -> Complete a -> Bool #

(/=) :: Complete a -> Complete a -> Bool #

Data a => Data (Complete a) Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Complete a -> c (Complete a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Complete a) #

toConstr :: Complete a -> Constr #

dataTypeOf :: Complete a -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c (Complete a)) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Complete a)) #

gmapT :: (forall b. Data b => b -> b) -> Complete a -> Complete a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Complete a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Complete a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Complete a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Complete a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Complete a -> m (Complete a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Complete a -> m (Complete a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Complete a -> m (Complete a) #

Read a => Read (Complete a) Source # 
Show a => Show (Complete a) Source # 

Methods

showsPrec :: Int -> Complete a -> ShowS #

show :: Complete a -> String #

showList :: [Complete a] -> ShowS #

Generic (Complete a) Source # 

Associated Types

type Rep (Complete a) :: * -> * #

Methods

from :: Complete a -> Rep (Complete a) x #

to :: Rep (Complete a) x -> Complete a #

Arbitrary a => Arbitrary (Complete a) Source # 

Methods

arbitrary :: Gen (Complete a) #

shrink :: Complete a -> [Complete a] #

ToJSON a => ToJSON (Complete a) Source # 
FromJSON a => FromJSON (Complete a) Source # 
type Rep (Complete a) Source # 
type Rep (Complete a) = D1 (MetaData "Complete" "Network.WebSockets.RPC.Types" "websockets-rpc-0.6.0-Bvy6xnnJ8kALWZvC58himH" True) (C1 (MetaCons "Complete" PrefixI True) (S1 (MetaSel (Just Symbol "getComplete") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (RPCIdentified a))))

Categorized

data ClientToServer sub sup Source #

Constructors

Sub (Subscribe sub) 
Sup (Supply sup) 
Ping 

Instances

(Eq sup, Eq sub) => Eq (ClientToServer sub sup) Source # 

Methods

(==) :: ClientToServer sub sup -> ClientToServer sub sup -> Bool #

(/=) :: ClientToServer sub sup -> ClientToServer sub sup -> Bool #

(Data sup, Data sub) => Data (ClientToServer sub sup) Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ClientToServer sub sup -> c (ClientToServer sub sup) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (ClientToServer sub sup) #

toConstr :: ClientToServer sub sup -> Constr #

dataTypeOf :: ClientToServer sub sup -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c (ClientToServer sub sup)) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (ClientToServer sub sup)) #

gmapT :: (forall b. Data b => b -> b) -> ClientToServer sub sup -> ClientToServer sub sup #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ClientToServer sub sup -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ClientToServer sub sup -> r #

gmapQ :: (forall d. Data d => d -> u) -> ClientToServer sub sup -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ClientToServer sub sup -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ClientToServer sub sup -> m (ClientToServer sub sup) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ClientToServer sub sup -> m (ClientToServer sub sup) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ClientToServer sub sup -> m (ClientToServer sub sup) #

(Read sup, Read sub) => Read (ClientToServer sub sup) Source # 
(Show sup, Show sub) => Show (ClientToServer sub sup) Source # 

Methods

showsPrec :: Int -> ClientToServer sub sup -> ShowS #

show :: ClientToServer sub sup -> String #

showList :: [ClientToServer sub sup] -> ShowS #

Generic (ClientToServer sub sup) Source # 

Associated Types

type Rep (ClientToServer sub sup) :: * -> * #

Methods

from :: ClientToServer sub sup -> Rep (ClientToServer sub sup) x #

to :: Rep (ClientToServer sub sup) x -> ClientToServer sub sup #

(Arbitrary sub, Arbitrary sup) => Arbitrary (ClientToServer sub sup) Source # 

Methods

arbitrary :: Gen (ClientToServer sub sup) #

shrink :: ClientToServer sub sup -> [ClientToServer sub sup] #

(ToJSON sub, ToJSON sup) => ToJSON (ClientToServer sub sup) Source # 
(FromJSON sub, FromJSON sup) => FromJSON (ClientToServer sub sup) Source # 
type Rep (ClientToServer sub sup) Source # 
type Rep (ClientToServer sub sup) = D1 (MetaData "ClientToServer" "Network.WebSockets.RPC.Types" "websockets-rpc-0.6.0-Bvy6xnnJ8kALWZvC58himH" False) ((:+:) (C1 (MetaCons "Sub" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Subscribe sub)))) ((:+:) (C1 (MetaCons "Sup" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Supply sup)))) (C1 (MetaCons "Ping" PrefixI False) U1)))

data ServerToClient rep com Source #

Constructors

Rep (Reply rep) 
Com (Complete com) 
Pong 

Instances

(Eq com, Eq rep) => Eq (ServerToClient rep com) Source # 

Methods

(==) :: ServerToClient rep com -> ServerToClient rep com -> Bool #

(/=) :: ServerToClient rep com -> ServerToClient rep com -> Bool #

(Data com, Data rep) => Data (ServerToClient rep com) Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ServerToClient rep com -> c (ServerToClient rep com) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (ServerToClient rep com) #

toConstr :: ServerToClient rep com -> Constr #

dataTypeOf :: ServerToClient rep com -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c (ServerToClient rep com)) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (ServerToClient rep com)) #

gmapT :: (forall b. Data b => b -> b) -> ServerToClient rep com -> ServerToClient rep com #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ServerToClient rep com -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ServerToClient rep com -> r #

gmapQ :: (forall d. Data d => d -> u) -> ServerToClient rep com -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ServerToClient rep com -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ServerToClient rep com -> m (ServerToClient rep com) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ServerToClient rep com -> m (ServerToClient rep com) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ServerToClient rep com -> m (ServerToClient rep com) #

(Read com, Read rep) => Read (ServerToClient rep com) Source # 
(Show com, Show rep) => Show (ServerToClient rep com) Source # 

Methods

showsPrec :: Int -> ServerToClient rep com -> ShowS #

show :: ServerToClient rep com -> String #

showList :: [ServerToClient rep com] -> ShowS #

Generic (ServerToClient rep com) Source # 

Associated Types

type Rep (ServerToClient rep com) :: * -> * #

Methods

from :: ServerToClient rep com -> Rep (ServerToClient rep com) x #

to :: Rep (ServerToClient rep com) x -> ServerToClient rep com #

(Arbitrary sub, Arbitrary sup) => Arbitrary (ServerToClient sub sup) Source # 

Methods

arbitrary :: Gen (ServerToClient sub sup) #

shrink :: ServerToClient sub sup -> [ServerToClient sub sup] #

(ToJSON rep, ToJSON com) => ToJSON (ServerToClient rep com) Source # 
(FromJSON rep, FromJSON com) => FromJSON (ServerToClient rep com) Source # 
type Rep (ServerToClient rep com) Source # 
type Rep (ServerToClient rep com) = D1 (MetaData "ServerToClient" "Network.WebSockets.RPC.Types" "websockets-rpc-0.6.0-Bvy6xnnJ8kALWZvC58himH" False) ((:+:) (C1 (MetaCons "Rep" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Reply rep)))) ((:+:) (C1 (MetaCons "Com" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Complete com)))) (C1 (MetaCons "Pong" PrefixI False) U1)))

Exceptions