purescript-0.11.1: PureScript Programming Language Compiler

Safe HaskellNone



Provides functionality to manage imports



addImplicitImport Source #


:: (MonadIO m, MonadError IdeError m) 
=> FilePath

The Sourcefile read from

-> ModuleName

The module to import

-> m [Text] 

Adds an implicit import like import Prelude to a Sourcefile.

addImportForIdentifier Source #


:: (Ide m, MonadError IdeError m) 
=> FilePath

The Sourcefile to read from

-> Text

The identifier to import

-> [Filter]

Filters to apply before searching for the identifier

-> m (Either [Match IdeDeclaration] [Text]) 

Looks up the given identifier in the currently loaded modules.

  • Throws an error if the identifier cannot be found.
  • If exactly one match is found, adds an explicit import to the importsection
  • If more than one possible imports are found, reports the possibilities as a list of completions.

answerRequest :: MonadIO m => Maybe FilePath -> [Text] -> m Success Source #

Writes a list of lines to Just filepath and responds with a TextResult, or returns the lines as a MultilineTextResult if Nothing was given as the first argument.

parseImportsFromFile :: (MonadIO m, MonadError IdeError m) => FilePath -> m (ModuleName, [(ModuleName, ImportDeclarationType, Maybe ModuleName)]) Source #

Reads a file and returns the parsed modulename as well as the parsed imports, while ignoring eventual parse errors that aren't relevant to the import section

parseImport :: Text -> Maybe Import Source #

Test and ghci helper