@@ -3,6 +3,7 @@ module Generate
@@ -11,8 +12,10 @@ import Prelude hiding (cycle, print)
11import Control.Concurrent (MVar, forkIO, newEmptyMVar, newMVar, putMVar, readMVar)
12import Control.Concurrent (MVar, forkIO, newEmptyMVar, newMVar, putMVar, readMVar)
12import Control.Monad (liftM2)
13import Control.Monad (liftM2)
13import qualified Data.ByteString.Builder as B
14import qualified Data.ByteString.Builder as B
14import qualified Data.Map as Map
16import qualified Data.Map as Map
15import qualified Data.Maybe as Maybe
17import qualified Data.Maybe as Maybe
18+import qualified Data.Name as N
16import qualified Data.NonEmptyList as NE
19import qualified Data.NonEmptyList as NE
18import qualified AST.Optimized as Opt
21import qualified AST.Optimized as Opt
@@ -74,6 +77,13 @@ prod root details (Build.Artifacts pkg _ roots modules) =
74 return $ JS.generate mode graph mains
77 return $ JS.generate mode graph mains
80+repl :: FilePath -> Details.Details -> Bool -> Build.ReplArtifacts -> N.Name -> Task B.Builder
81+repl root details ansi (Build.ReplArtifacts home modules localizer annotations) name =
82+ do objects <- finalizeObjects =<< loadObjects root details modules
83+ let graph = objectsToGlobalGraph objects
84+ return $ JS.generateForRepl ansi localizer graph home name (annotations ! name)
78-- CHECK FOR DEBUG
88-- CHECK FOR DEBUG