@@ -12,6 +12,9 @@
1212module Development.IDE.Core.Rules(
1313 IdeState, GetDependencies(..), GetParsedModule(..), TransitiveDependencies(..),
1414 Priority(..),
15+ priorityTypeCheck,
16+ priorityGenerateCore,
17+ priorityFilesOfInterest,
1518 runAction, useE, usesE,
1619 toIdeResult, defineNoFile,
1720 mainRule,
@@ -117,14 +120,14 @@ getParsedModule file = use GetParsedModule file
117120-- Rules
118121-- These typically go from key to value and are oracles.
119122
120−-- TODO (MK) This should be independent of DAML or move out of hie-core.
121−-- | We build artefacts based on the following high-to-low priority order.
122−data Priority
123− = PriorityTypeCheck
124− | PriorityGenerateDalf
125− | PriorityFilesOfInterest
126− deriving (Eq, Ord, Show, Enum)
123+priorityTypeCheck :: Priority
124+priorityTypeCheck = Priority 0
127125
126+priorityGenerateCore :: Priority
127+priorityGenerateCore = Priority (-1)
128+
129+priorityFilesOfInterest :: Priority
130+priorityFilesOfInterest = Priority (-2)
128131
129132getParsedModuleRule :: Rules ()
130133getParsedModuleRule =
@@ -240,7 +243,7 @@ typeCheckRule =
240243 pm <- use_ GetParsedModule file
241244 deps <- use_ GetDependencies file
242245 tms <- uses_ TypeCheck (transitiveModuleDeps deps)
243− setPriority PriorityTypeCheck
246+ setPriority priorityTypeCheck
244247 packageState <- use_ GhcSession ""
245248 opt <- getIdeOptions
246249 liftIO $ Compile.typecheckModule opt packageState tms pm
@@ -252,7 +255,7 @@ generateCoreRule =
252255 deps <- use_ GetDependencies file
253256 (tm:tms) <- uses_ TypeCheck (file:transitiveModuleDeps deps)
254257 let pm = tm_parsed_module . Compile.tmrModule $ tm
255− setPriority PriorityGenerateDalf
258+ setPriority priorityGenerateCore
256259 packageState <- use_ GhcSession ""
257260 liftIO $ Compile.compileModule pm packageState tms tm
258261