Safe Haskell | None |
---|---|
Language | Haskell2010 |
Semantics of requests that are sent to the server.
See https://github.com/LambdaHack/LambdaHack/wiki/Client-server-architecture.
- mainSer :: (MonadAtomic m, MonadServerReadRequest m) => [String] -> COps -> (m () -> IO ()) -> (COps -> DebugModeCli -> ((FactionId -> ChanServer ResponseUI RequestUI -> IO ()) -> (FactionId -> ChanServer ResponseAI RequestAI -> IO ()) -> IO ()) -> IO ()) -> IO ()
Documentation
mainSer :: (MonadAtomic m, MonadServerReadRequest m) => [String] -> COps -> (m () -> IO ()) -> (COps -> DebugModeCli -> ((FactionId -> ChanServer ResponseUI RequestUI -> IO ()) -> (FactionId -> ChanServer ResponseAI RequestAI -> IO ()) -> IO ()) -> IO ()) -> IO () Source
Fire up the frontend with the engine fueled by content.
The action monad types to be used are determined by the exeSer
and executorCli
calls. If other functions are used in their place
the types are different and so the whole pattern of computation
is different. Which of the frontends is run depends on the flags supplied
when compiling the engine library.