ghcide-2.4.0.0: The core of an IDE
Safe HaskellSafe-Inferred
LanguageHaskell2010

Development.IDE.Types.Options

Description

Options

Synopsis

Documentation

data IdeOptions #

Constructors

IdeOptions 

Fields

data IdePreprocessedSource #

Constructors

IdePreprocessedSource 

Fields

newtype IdeReportProgress #

Constructors

IdeReportProgress Bool 

newtype IdeDefer #

Constructors

IdeDefer Bool 

newtype IdeTesting #

Constructors

IdeTesting Bool 

newtype IdeOTMemoryProfiling #

Constructors

IdeOTMemoryProfiling Bool 

data IdePkgLocationOptions #

The set of options used to locate files belonging to external packages.

Constructors

IdePkgLocationOptions 

Fields

  • optLocateHieFile :: UnitState -> Module -> IO (Maybe FilePath)

    Locate the HIE file for the given module. The PackageConfig can be used to lookup settings like importDirs.

  • optLocateSrcFile :: UnitState -> Module -> IO (Maybe FilePath)

    Locate the source file for the given module. The PackageConfig can be used to lookup settings like importDirs. For DAML, we place them in the package DB. For cabal this could point somewhere in ~.cabalpackages.

type IdeResult v = ([FileDiagnostic], Maybe v) #

The result of an IDE operation. Warnings and errors are in the Diagnostic, and a value is in the Maybe. For operations that throw an error you expect a non-empty list of diagnostics, at least one of which is an error, and a Nothing. For operations that succeed you expect perhaps some warnings and a Just. For operations that depend on other failing operations you may get empty diagnostics and a Nothing, to indicate this phase throws no fresh errors but still failed.

A rule on a file should only return diagnostics for that given file. It should not propagate diagnostic errors through multiple phases.

data IdeGhcSession #

Constructors

IdeGhcSession 

Fields

Instances

Instances details
Show IdeGhcSession # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

showsPrec :: Int -> IdeGhcSession -> ShowS #

show :: IdeGhcSession -> String #

showList :: [IdeGhcSession] -> ShowS #

NFData IdeGhcSession # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: IdeGhcSession -> () #

data ProgressReportingStyle #

Constructors

Percentage

Report using the LSP _percentage field

Explicit

Report using explicit 123/456 text

NoProgress

Do not report any percentage