diff options
Diffstat (limited to 'compiler/GHC/Driver/Pipeline.hs-boot')
-rw-r--r-- | compiler/GHC/Driver/Pipeline.hs-boot | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/compiler/GHC/Driver/Pipeline.hs-boot b/compiler/GHC/Driver/Pipeline.hs-boot index 3467ff4ced..0aedc9b00f 100644 --- a/compiler/GHC/Driver/Pipeline.hs-boot +++ b/compiler/GHC/Driver/Pipeline.hs-boot @@ -1,13 +1,25 @@ +{-# LANGUAGE ConstraintKinds #-} +{-# LANGUAGE FlexibleContexts #-} module GHC.Driver.Pipeline where -import GHC.Driver.Env.Types ( HscEnv ) +import {-# SOURCE #-} GHC.Driver.Pipeline.Phases ( TPhase ) +import GHC.Driver.Pipeline.Monad ( TPipelineClass, PipeEnv ) +import {-# SOURCE #-} GHC.Driver.Env.Types ( HscEnv ) import GHC.ForeignSrcLang ( ForeignSrcLang ) -import GHC.Prelude (FilePath, IO) -import GHC.Unit.Module.Location (ModLocation) -import GHC.Unit.Module.Name (ModuleName) -import GHC.Driver.Session (DynFlags) +import GHC.Prelude (Maybe, Bool, FilePath, IO) +import GHC.Unit.Module.Location ( ModLocation ) +import GHC.Unit.Module.Name ( ModuleName ) +import GHC.Driver.Phases (Phase) +import {-# SOURCE #-} GHC.Driver.Session ( DynFlags ) -- These are used in GHC.Driver.Pipeline.Execute, but defined in terms of runPipeline compileForeign :: HscEnv -> ForeignSrcLang -> FilePath -> IO FilePath compileEmptyStub :: DynFlags -> HscEnv -> FilePath -> ModLocation -> ModuleName -> IO () + +asPipeline :: TPipelineClass TPhase m + => Bool -> PipeEnv -> HscEnv -> Maybe ModLocation -> FilePath -> m (Maybe FilePath) +llvmPipeline :: TPipelineClass TPhase m + => PipeEnv -> HscEnv -> Maybe ModLocation -> FilePath -> m (Maybe FilePath) +viaCPipeline :: TPipelineClass TPhase m + => Phase -> PipeEnv -> HscEnv -> Maybe ModLocation -> FilePath -> m (Maybe FilePath) |