ghcide-2.10.0.0: The core of an IDE
Safe HaskellSafe-Inferred
LanguageGHC2021

Development.IDE.Core.FileStore

Synopsis

Documentation

getFileModTimeContents :: NormalizedFilePath -> Action (UTCTime, Maybe Rope) Source #

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

getVersionedTextDoc :: TextDocumentIdentifier -> Action VersionedTextDocumentIdentifier Source #

Given a text document identifier, annotate it with the latest version.

Like Language.LSP.Server.Core.getVersionedTextDoc, but gets the virtual file from the Shake VFS rather than the LSP VFS.

setFileModified Source #

Arguments

:: Recorder (WithPriority Log) 
-> VFSModified 
-> IdeState 
-> Bool

Was the file saved?

-> NormalizedFilePath 
-> IO [Key] 
-> IO () 

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

setSomethingModified :: VFSModified -> IdeState -> String -> IO [Key] -> IO () Source #

Note that some keys have been modified and restart the session Only valid if the virtual file system was initialised by LSP, as that independently tracks which files are modified.

resetFileStore :: IdeState -> [(NormalizedFilePath, FileChangeType)] -> IO [Key] Source #

Reset the GetModificationTime state of watched files Assumes the list does not include any FOIs

resetInterfaceStore :: ShakeExtras -> NormalizedFilePath -> STM [Key] Source #

Reset the GetModificationTime state of interface files

data Log Source #

Instances

Instances details
Show Log Source # 
Instance details

Defined in Development.IDE.Core.FileStore

Methods

showsPrec :: Int -> Log -> ShowS #

show :: Log -> String #

showList :: [Log] -> ShowS #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Core.FileStore

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #