ghcide-0.3.0: The core of an IDE

Safe HaskellNone




getFileContents :: NormalizedFilePath -> Action (UTCTime, Maybe Text) Source #

Returns the modification time and the contents. For VFS paths, the modification time is the current time.

getVirtualFile :: VFSHandle -> NormalizedUri -> IO (Maybe VirtualFile) Source #

get the contents of a virtual file

setBufferModified :: IdeState -> NormalizedFilePath -> Maybe Text -> IO () Source #

Notify the compiler service that a particular file has been modified. Use Nothing to say the file is no longer in the virtual file system but should be sourced from disk, or Just to give its new value.

setFileModified :: IdeState -> NormalizedFilePath -> IO () Source #

Note that some buffer for a specific file has been modified but not with what changes.

setSomethingModified :: IdeState -> IO () Source #

Note that some buffer somewhere has been modified, but don't say what. Only valid if the virtual file system was initialised by LSP, as that independently tracks which files are modified.

data VFSHandle Source #

haskell-lsp manages the VFS internally and automatically so we cannot use the builtin VFS without spawning up an LSP server. To be able to test things like setBufferModified we abstract over the VFS implementation.

IsIdeGlobal VFSHandle Source # 
Instance details

Defined in Development.IDE.Core.FileStore