@@ -1,6 +1,9 @@
1−{-# OPTIONS_GHC -Wall #-}
2{-# LANGUAGE OverloadedStrings #-}
1{-# LANGUAGE OverloadedStrings #-}
3−module Repl where
2+module Repl
6import Prelude hiding (lines, read)
9import Prelude hiding (lines, read)
@@ -8,7 +11,6 @@ import Control.Applicative ((<|>))
8import Control.Monad.RWS (lift, liftIO)
11import Control.Monad.RWS (lift, liftIO)
9import qualified Control.Monad.RWS as RWS
12import qualified Control.Monad.RWS as RWS
10import qualified Data.ByteString.Builder as B
13import qualified Data.ByteString.Builder as B
11−import qualified Data.ByteString.Char8 as BS
12import qualified Data.ByteString.Lazy as LBS
14import qualified Data.ByteString.Lazy as LBS
13import qualified Data.List as List
15import qualified Data.List as List
14import qualified Data.Map as Map
16import qualified Data.Map as Map
@@ -31,15 +33,19 @@ import qualified Elm.Utils as Elm
31import qualified Reporting.Task as Task
33import qualified Reporting.Task as Task
32import qualified Reporting.Progress.Repl as Repl
34import qualified Reporting.Progress.Repl as Repl
34−import qualified CommandLine.Args as Args
41−run :: Args.ReplFlags -> IO ()
41+data Flags =
43+ { _interpreter :: Maybe FilePath
47+run :: () -> Flags -> IO ()
42−run (Args.ReplFlags maybeAlternateInterpreter) =
48+run () (Flags maybeAlternateInterpreter) =
43 do interpreter <- getInterpreter maybeAlternateInterpreter
49 do interpreter <- getInterpreter maybeAlternateInterpreter
44 _ <- Project.getRootWithReplFallback
50 _ <- Project.getRootWithReplFallback
45 putStrLn welcomeMessage
51 putStrLn welcomeMessage
@@ -131,11 +137,6 @@ eval input =
131 report "I cannot handle port declarations."
137 report "I cannot handle port declarations."
134−toUtf8 :: String -> BS.ByteString
136− LBS.toStrict (B.toLazyByteString (B.stringUtf8 string))
139report :: String -> Runner (Maybe a)
140report :: String -> Runner (Maybe a)
140report msg =
141report msg =
141 do liftIO (putStrLn msg)
142 do liftIO (putStrLn msg)