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

Safe HaskellNone
LanguageHaskell2010

Network.WebSockets.RPC.Trans.Server

Contents

Synopsis

Documentation

data WebSocketServerRPCT sub sup m a Source #

Instances

MonadReader r m => MonadReader r (WebSocketServerRPCT sub sup m) Source # 

Methods

ask :: WebSocketServerRPCT sub sup m r #

local :: (r -> r) -> WebSocketServerRPCT sub sup m a -> WebSocketServerRPCT sub sup m a #

reader :: (r -> a) -> WebSocketServerRPCT sub sup m a #

MonadState s m => MonadState s (WebSocketServerRPCT sub sup m) Source # 

Methods

get :: WebSocketServerRPCT sub sup m s #

put :: s -> WebSocketServerRPCT sub sup m () #

state :: (s -> (a, s)) -> WebSocketServerRPCT sub sup m a #

MonadWriter w m => MonadWriter w (WebSocketServerRPCT sub sup m) Source # 

Methods

writer :: (a, w) -> WebSocketServerRPCT sub sup m a #

tell :: w -> WebSocketServerRPCT sub sup m () #

listen :: WebSocketServerRPCT sub sup m a -> WebSocketServerRPCT sub sup m (a, w) #

pass :: WebSocketServerRPCT sub sup m (a, w -> w) -> WebSocketServerRPCT sub sup m a #

MonadTrans (WebSocketServerRPCT sub sup) Source # 

Methods

lift :: Monad m => m a -> WebSocketServerRPCT sub sup m a #

Monad m => Monad (WebSocketServerRPCT sub sup m) Source # 

Methods

(>>=) :: WebSocketServerRPCT sub sup m a -> (a -> WebSocketServerRPCT sub sup m b) -> WebSocketServerRPCT sub sup m b #

(>>) :: WebSocketServerRPCT sub sup m a -> WebSocketServerRPCT sub sup m b -> WebSocketServerRPCT sub sup m b #

return :: a -> WebSocketServerRPCT sub sup m a #

fail :: String -> WebSocketServerRPCT sub sup m a #

Functor m => Functor (WebSocketServerRPCT sub sup m) Source # 

Methods

fmap :: (a -> b) -> WebSocketServerRPCT sub sup m a -> WebSocketServerRPCT sub sup m b #

(<$) :: a -> WebSocketServerRPCT sub sup m b -> WebSocketServerRPCT sub sup m a #

Applicative m => Applicative (WebSocketServerRPCT sub sup m) Source # 

Methods

pure :: a -> WebSocketServerRPCT sub sup m a #

(<*>) :: WebSocketServerRPCT sub sup m (a -> b) -> WebSocketServerRPCT sub sup m a -> WebSocketServerRPCT sub sup m b #

(*>) :: WebSocketServerRPCT sub sup m a -> WebSocketServerRPCT sub sup m b -> WebSocketServerRPCT sub sup m b #

(<*) :: WebSocketServerRPCT sub sup m a -> WebSocketServerRPCT sub sup m b -> WebSocketServerRPCT sub sup m a #

MonadIO m => MonadIO (WebSocketServerRPCT sub sup m) Source # 

Methods

liftIO :: IO a -> WebSocketServerRPCT sub sup m a #

MonadThrow m => MonadThrow (WebSocketServerRPCT sub sup m) Source # 

Methods

throwM :: Exception e => e -> WebSocketServerRPCT sub sup m a #

MonadCatch m => MonadCatch (WebSocketServerRPCT sub sup m) Source # 

Methods

catch :: Exception e => WebSocketServerRPCT sub sup m a -> (e -> WebSocketServerRPCT sub sup m a) -> WebSocketServerRPCT sub sup m a #

MonadMask m => MonadMask (WebSocketServerRPCT sub sup m) Source # 

Methods

mask :: ((forall a. WebSocketServerRPCT sub sup m a -> WebSocketServerRPCT sub sup m a) -> WebSocketServerRPCT sub sup m b) -> WebSocketServerRPCT sub sup m b #

uninterruptibleMask :: ((forall a. WebSocketServerRPCT sub sup m a -> WebSocketServerRPCT sub sup m a) -> WebSocketServerRPCT sub sup m b) -> WebSocketServerRPCT sub sup m b #

Generic (WebSocketServerRPCT sub sup m a) Source # 

Associated Types

type Rep (WebSocketServerRPCT sub sup m a) :: * -> * #

Methods

from :: WebSocketServerRPCT sub sup m a -> Rep (WebSocketServerRPCT sub sup m a) x #

to :: Rep (WebSocketServerRPCT sub sup m a) x -> WebSocketServerRPCT sub sup m a #

type Rep (WebSocketServerRPCT sub sup m a) Source # 
type Rep (WebSocketServerRPCT sub sup m a) = D1 (MetaData "WebSocketServerRPCT" "Network.WebSockets.RPC.Trans.Server" "websockets-rpc-0.6.0-Bvy6xnnJ8kALWZvC58himH" True) (C1 (MetaCons "WebSocketServerRPCT" PrefixI True) (S1 (MetaSel (Just Symbol "runWebSocketServerRPCT") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (ReaderT * (Env sub sup m) m a))))

runWebSocketServerRPCT' :: Env sub sup m -> WebSocketServerRPCT sub sup m a -> m a Source #

getServerEnv :: Applicative m => WebSocketServerRPCT sub sup m (Env sub sup m) Source #

Utilities

registerSubscribeSupply :: MonadIO m => RPCID -> (Either sub sup -> m ()) -> WebSocketServerRPCT sub sup m () Source #

data Env sub sup m Source #

newEnv :: IO (Env sub sup m) Source #