ghcide-2.13.0.0: The core of an IDE
Safe HaskellNone
LanguageGHC2021

Development.IDE.LSP.LanguageServer

Synopsis

Documentation

runLanguageServer :: forall config a m. Show config => Recorder (WithPriority Log) -> Options -> Handle -> Handle -> config -> (config -> Value -> Either Text config) -> (config -> m ()) -> (MVar () -> IO (Setup config m a)) -> IO () Source #

setupLSP Source #

Arguments

:: Recorder (WithPriority Log) 
-> FilePath

root directory, see Note [Root Directory]

-> (FilePath -> IO FilePath)

Map root paths to the location of the hiedb for the project

-> Handlers (ServerM config) 
-> (LanguageContextEnv config -> FilePath -> WithHieDb -> ThreadQueue -> IO IdeState) 
-> MVar () 
-> IO (Setup config (ServerM config) IdeState) 

runWithWorkerThreads :: Recorder (WithPriority Log) -> FilePath -> (WithHieDb -> ThreadQueue -> IO ()) -> IO () Source #

runWithWorkerThreads create several threads to run the session, db and session loader see Note [Serializing runs in separate thread]

data Setup config (m :: Type -> Type) a Source #

Constructors

MkSetup 

Fields