Constructors
forall a. MakeAction !(RunMakeM a) !(MVar (Maybe a))
:: a typeCtrl KGHC 9.14.1 · lts/ghc-9.14.x · 3e2d568 · 2026-10-11
Moduleghc-9.14.1GHC2021
forall a. MakeAction !(RunMakeM a) !(MVar (Maybe a))Environment used when compiling a module
MakeEnvhsc_env :: !HscEnvcompile_sem :: !AbstractSemwithLogger :: forall a. Int -> ((Logger -> Logger) -> IO a) -> IO aenv_messager :: !Maybe Messagerdiag_wrapper :: GhcMessage -> AnyGhcDiagnosticRun the given actions and then wait for them all to finish.
runParPipelines :: WorkerLimitHow to limit work parallelism
-> HscEnvThe basic HscEnv which is augmented with specific info for each module
-> (GhcMessage -> AnyGhcDiagnostic)-> Maybe MessagerOptional custom messager to use to report progress
-> [MakeAction]The build plan for all the module nodes
-> IO ()Build and run a pipeline
This describes what we use to limit the number of jobs, either we limit it ourselves to a specific number or we have an external parallelism semaphore limit it for us.
NumProcessorsLimit IntJSemLimit SemaphoreNameSemaphore name to use
Eq WorkerLimitDefined in ghc-9.14.1 · GHC.Driver.MakeAction