rpc-framework-0.1.0.0: a remote procedure call framework
Network.Remote.RPC.Internal.MultiServer
data ServiceID Source
Constructors
Instances
type Handlers m = Map ServiceID (Handle -> AIO m ())Source
type State m = MVar (Handlers m, Integer)Source
newtype AIO m a Source
send :: (Show a, MonadIO m) => Handle -> a -> m ()Source
recv :: (Read a, MonadIO m) => Handle -> m aSource
startServer :: forall m a. (Forkable m, Monad m, MonadIO m) => Integer -> AIO m a -> m aSource
safeFind :: (Ord k, Show k) => Map k a -> k -> aSource
getHandlers :: Monad m => AIO m (State m)Source
addService :: (Monad m, MonadIO m) => (Handle -> AIO m ()) -> AIO m ServiceIDSource
addServiceByName :: (Monad m, MonadIO m) => String -> (Handle -> AIO m ()) -> AIO m ServiceIDSource
connectToService :: MonadIO m => String -> Integer -> ServiceID -> m HandleSource
class (Functor m, Monad m, MonadIO m, Forkable m) => Servable m Source