purescript-0.13.0: PureScript Programming Language Compiler

Safe HaskellNone



Functions to access psc-ide's state



getLoadedModulenames :: Ide m => m [ModuleName] Source #

Gets the loaded Modulenames

getExternFiles :: Ide m => m (ModuleMap ExternsFile) Source #

Gets all loaded ExternFiles

getFileState :: Ide m => m IdeFileState Source #

Retrieves the FileState from the State. This includes loaded Externfiles and parsed Modules

resetIdeState :: Ide m => m () Source #

Resets all State inside psc-ide

cacheRebuild :: Ide m => ExternsFile -> m () Source #

Sets rebuild cache to the given ExternsFile

cachedRebuild :: Ide m => m (Maybe (ModuleName, ExternsFile)) Source #

Retrieves the rebuild cache

insertExterns :: Ide m => ExternsFile -> m () Source #

Adds an ExternsFile into psc-ide's FileState. This does not populate the VolatileState, which needs to be done after all the necessary Externs and SourceFiles have been loaded.

insertModule :: Ide m => (FilePath, Module) -> m () Source #

Insert a Module into Stage1 of the State

insertExternsSTM :: TVar IdeState -> ExternsFile -> STM () Source #

STM version of insertExterns

getAllModules :: Ide m => Maybe ModuleName -> m (ModuleMap [IdeDeclarationAnn]) Source #

Checks if the given ModuleName matches the last rebuild cache and if it does returns all loaded definitions + the definitions inside the rebuild cache

populateVolatileStateSync :: (Ide m, MonadLogger m) => m () Source #

Resolves reexports and populates VolatileState with data to be used in queries.

resolveOperatorsForModule :: ModuleMap [IdeDeclarationAnn] -> [IdeDeclarationAnn] -> [IdeDeclarationAnn] Source #

Looks up the types and kinds for operators and assigns them to their declarations