-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A server process that runs hint. -- -- This library provides a server process (implemented using eprocess) -- that can receive and run actions in the Interpreter monad. @package hint-server @version 1.2.2 -- | This module provides a server process (implemented using eprocess) -- that can receive and run actions in the Interpreter monad. module Language.Haskell.Interpreter.Server -- | The server handle. It's returned on process creation and should be -- used afterwards to send messages to it data ServerHandle -- | Starts the server. Usage: handle <- start start :: IO ServerHandle -- | Stops the server. Usage: stop serverhandle stop :: ServerHandle -> IO () -- | Runs the action. Usage: result <- runIn serverhandle action -- runIn :: ServerHandle -> InterpreterT IO a -> IO (Either InterpreterError a) -- | Asynchronically runs an action and returns the MVar that will -- be filled with the result when it's there. Usage: mvar <- -- asyncRunIn serverhandle action asyncRunIn :: ServerHandle -> InterpreterT IO a -> IO (MVar (Either InterpreterError a)) -- | Runs all the pending actions (those that where run using -- asyncRunIn. Usage: flush serverhandle flush :: ServerHandle -> IO (Either InterpreterError ()) instance MonadInterpreter m => MonadInterpreter (ReceiverT r m)