ghcide-1.0.0.0: The core of an IDE
Safe HaskellNone
LanguageHaskell2010

Development.IDE.Types.HscEnvEq

Synopsis

Documentation

data HscEnvEq Source #

An HscEnv with equality. Two values are considered equal if they are created with the same call to newHscEnvEq.

Instances

Instances details
Eq HscEnvEq Source # 
Instance details

Defined in Development.IDE.Types.HscEnvEq

Show HscEnvEq Source # 
Instance details

Defined in Development.IDE.Types.HscEnvEq

Hashable HscEnvEq Source # 
Instance details

Defined in Development.IDE.Types.HscEnvEq

Methods

hashWithSalt :: Int -> HscEnvEq -> Int #

hash :: HscEnvEq -> Int #

Binary HscEnvEq Source # 
Instance details

Defined in Development.IDE.Types.HscEnvEq

Methods

put :: HscEnvEq -> Put #

get :: Get HscEnvEq #

putList :: [HscEnvEq] -> Put #

NFData HscEnvEq Source # 
Instance details

Defined in Development.IDE.Types.HscEnvEq

Methods

rnf :: HscEnvEq -> () #

hscEnvWithImportPaths :: HscEnvEq -> HscEnv Source #

Unwrap the HscEnv with the original import paths. Used only for locating imports

envImportPaths :: HscEnvEq -> Maybe [String] Source #

If Just, import dirs originally configured in this env If Nothing, the env import dirs are unaltered

envVisibleModuleNames :: HscEnvEq -> IO (Maybe [ModuleName]) Source #

listVisibleModuleNames is a pure function, but it could panic due to a ghc bug: https://github.com/haskell/haskell-language-server/issues/1365 So it's wrapped in IO here for error handling If Nothing, listVisibleModuleNames panic

deps :: HscEnvEq -> [(InstalledUnitId, DynFlags)] Source #

In memory components for this HscEnv This is only used at the moment for the import dirs in the DynFlags