|
|
|
|
| Synopsis |
|
| newHscEnv :: DynFlags -> IO HscEnv | | | hscCmmFile :: GhcMonad m => HscEnv -> FilePath -> m () | | | hscParseIdentifier :: GhcMonad m => DynFlags -> String -> m (Located RdrName) | | | hscSimplify :: ModGuts -> Comp ModGuts | | | evalComp :: Comp a -> CompState -> IO (Messages, a) | | | hscNormalIface :: ModGuts -> Comp (ModIface, Bool, ModDetails, CgGuts) | | | hscWriteIface :: (ModIface, Bool, ModDetails, a) -> Comp (ModIface, ModDetails, a) | | | hscOneShot :: (ModIface, ModDetails, CgGuts) -> Comp (Maybe HscStatus) | | | data CompState = CompState {} | | | hscStmt :: GhcMonad m => HscEnv -> String -> m (Maybe ([Id], HValue)) | | | hscTcExpr :: GhcMonad m => HscEnv -> String -> m Type | | | hscKcType :: GhcMonad m => HscEnv -> String -> m Kind | | | compileExpr :: HscEnv -> SrcSpan -> CoreExpr -> IO HValue | | | hscCompileOneShot :: Compiler HscStatus | | | hscCompileBatch :: Compiler (HscStatus, ModIface, ModDetails) | | | hscCompileNothing :: Compiler (HscStatus, ModIface, ModDetails) | | | hscCompileInteractive :: Compiler (InteractiveStatus, ModIface, ModDetails) | | | | | | | parseFile :: GhcMonad m => HscEnv -> ModSummary -> m (Located (HsModule RdrName)) | | | typecheckModule' :: GhcMonad m => HscEnv -> ModSummary -> Located (HsModule RdrName) -> m TcGblEnv | | | typecheckRenameModule :: GhcMonad m => HscEnv -> ModSummary -> Located (HsModule RdrName) -> m (TcGblEnv, RenamedStuff) | | | deSugarModule :: GhcMonad m => HscEnv -> ModSummary -> TcGblEnv -> m ModGuts | | | makeSimpleIface :: HscEnv -> Maybe ModIface -> TcGblEnv -> ModDetails -> IO (ModIface, Bool) | | | makeSimpleDetails :: HscEnv -> TcGblEnv -> IO ModDetails |
|
|
| Documentation |
|
| newHscEnv :: DynFlags -> IO HscEnv |
|
| hscCmmFile :: GhcMonad m => HscEnv -> FilePath -> m () |
|
| hscParseIdentifier :: GhcMonad m => DynFlags -> String -> m (Located RdrName) |
|
| hscSimplify :: ModGuts -> Comp ModGuts |
|
| evalComp :: Comp a -> CompState -> IO (Messages, a) |
|
| hscNormalIface :: ModGuts -> Comp (ModIface, Bool, ModDetails, CgGuts) |
|
| hscWriteIface :: (ModIface, Bool, ModDetails, a) -> Comp (ModIface, ModDetails, a) |
|
| hscOneShot :: (ModIface, ModDetails, CgGuts) -> Comp (Maybe HscStatus) |
|
| data CompState |
|
|
| hscStmt |
|
|
| hscTcExpr :: GhcMonad m => HscEnv -> String -> m Type |
|
| hscKcType |
|
|
| compileExpr :: HscEnv -> SrcSpan -> CoreExpr -> IO HValue |
|
| hscCompileOneShot :: Compiler HscStatus |
|
| hscCompileBatch :: Compiler (HscStatus, ModIface, ModDetails) |
|
| hscCompileNothing :: Compiler (HscStatus, ModIface, ModDetails) |
|
| hscCompileInteractive :: Compiler (InteractiveStatus, ModIface, ModDetails) |
|
| data HscStatus |
| Constructors | | HscNoRecomp | | | HscRecomp Bool | |
|
|
|
| data InteractiveStatus |
|
|
| parseFile :: GhcMonad m => HscEnv -> ModSummary -> m (Located (HsModule RdrName)) |
| parse a file, returning the abstract syntax
|
|
| typecheckModule' :: GhcMonad m => HscEnv -> ModSummary -> Located (HsModule RdrName) -> m TcGblEnv |
| Rename and typecheck a module
|
|
| typecheckRenameModule :: GhcMonad m => HscEnv -> ModSummary -> Located (HsModule RdrName) -> m (TcGblEnv, RenamedStuff) |
| Rename and typecheck a module, additionally returning the renamed syntax
|
|
| deSugarModule :: GhcMonad m => HscEnv -> ModSummary -> TcGblEnv -> m ModGuts |
| Convert a typechecked module to Core
|
|
| makeSimpleIface :: HscEnv -> Maybe ModIface -> TcGblEnv -> ModDetails -> IO (ModIface, Bool) |
| Make a ModIface from the results of typechecking. Used when
not optimising, and the interface doesn't need to contain any
unfoldings or other cross-module optimisation info.
ToDo: the old interface is only needed to get the version numbers,
we should use fingerprint versions instead.
|
|
| makeSimpleDetails :: HscEnv -> TcGblEnv -> IO ModDetails |
| Make a ModDetails from the results of typechecking. Used when
typechecking only, as opposed to full compilation.
|
|
| Produced by Haddock version 2.3.0 |