| Safe Haskell | Safe-Inferred |
|---|---|
| Language | GHC2021 |
Development.IDE.Core.Service
Description
A Shake implementation of the compiler service, built using the Shaker abstraction layer for in-memory use.
Synopsis
- getIdeOptions :: Action IdeOptions
- getIdeOptionsIO :: ShakeExtras -> IO IdeOptions
- data IdeState
- initialise :: Recorder (WithPriority Log) -> Config -> IdePlugins IdeState -> Rules () -> Maybe (LanguageContextEnv Config) -> Debouncer NormalizedUri -> IdeOptions -> WithHieDb -> ThreadQueue -> Monitoring -> FilePath -> IO IdeState
- shutdown :: IdeState -> IO ()
- runAction :: String -> IdeState -> Action a -> IO a
- getDiagnostics :: IdeState -> STM [FileDiagnostic]
- ideLogger :: IdeState -> Recorder (WithPriority Log)
- updatePositionMapping :: IdeState -> VersionedTextDocumentIdentifier -> [TextDocumentContentChangeEvent] -> STM ()
- data Log
- = LogShake Log
- | LogOfInterest Log
- | LogFileExists Log
Documentation
A Shake database plus persistent store. Can be thought of as storing
mappings from (FilePath, k) to RuleResult k.
Instances
| MonadReader (ReactorChan, IdeState) (ServerM c) Source # | |
Defined in Development.IDE.LSP.Server Methods ask :: ServerM c (ReactorChan, IdeState) # local :: ((ReactorChan, IdeState) -> (ReactorChan, IdeState)) -> ServerM c a -> ServerM c a # reader :: ((ReactorChan, IdeState) -> a) -> ServerM c a # | |
Arguments
| :: Recorder (WithPriority Log) | |
| -> Config | |
| -> IdePlugins IdeState | |
| -> Rules () | |
| -> Maybe (LanguageContextEnv Config) | |
| -> Debouncer NormalizedUri | |
| -> IdeOptions | |
| -> WithHieDb | |
| -> ThreadQueue | |
| -> Monitoring | |
| -> FilePath | Root directory see Note [Root Directory] |
| -> IO IdeState |
Initialise the Compiler Service.
getDiagnostics :: IdeState -> STM [FileDiagnostic] Source #
updatePositionMapping :: IdeState -> VersionedTextDocumentIdentifier -> [TextDocumentContentChangeEvent] -> STM () Source #
Constructors
| LogShake Log | |
| LogOfInterest Log | |
| LogFileExists Log |