Skip to content

Commit bd29070

Browse files
Provide externs to rebuildModule (#224)
1 parent e6cbf0d commit bd29070

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

server/Main.hs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -112,8 +112,8 @@ buildMakeActions codegenRef =
112112
outputPrimDocs :: Make.Make ()
113113
outputPrimDocs = pure ()
114114

115-
server :: [P.ExternsFile] -> P.Env -> P.Environment -> Int -> IO ()
116-
server externs initNamesEnv initEnv port = do
115+
server :: [P.ExternsFile] -> P.Environment -> Int -> IO ()
116+
server externs initEnv port = do
117117
codegenRef <- IORef.newIORef Nothing
118118
let makeActions = buildMakeActions codegenRef
119119
let compile :: Text -> IO (Either Error ([P.JSONError], JS))
@@ -129,7 +129,7 @@ server externs initNamesEnv initEnv port = do
129129
return $ Left $ toCompilerErrors parserErrors
130130

131131
(parserWarnings, Right m) | P.getModuleName m == P.ModuleName "Main" -> do
132-
(makeResult, warnings) <- Make.runMake P.defaultOptions $ Make.rebuildModule makeActions [] m
132+
(makeResult, warnings) <- Make.runMake P.defaultOptions $ Make.rebuildModule makeActions externs m
133133
codegenResult <- IORef.readIORef codegenRef
134134
return $ case makeResult of
135135
Left errors ->
@@ -146,6 +146,7 @@ server externs initNamesEnv initEnv port = do
146146
scottyOpts (getOpts port) $ do
147147
get "/" $
148148
Scotty.text "POST api.purescript.org/compile"
149+
149150
post "/compile" $ do
150151
code <- T.decodeUtf8 . BL.toStrict <$> body
151152
response <- lift $ compile code
@@ -155,6 +156,7 @@ server externs initNamesEnv initEnv port = do
155156
Scotty.json $ A.object [ "error" .= err ]
156157
Right (warnings, comp) ->
157158
Scotty.json $ A.object [ "js" .= comp, "warnings" .= warnings ]
159+
158160
get "/search" $ do
159161
query <- param "q"
160162
Scotty.setHeader "Access-Control-Allow-Origin" "*"
@@ -230,9 +232,7 @@ main = do
230232
inputFiles <- concat <$> traverse glob inputGlobs
231233
e <- runExceptT $ do
232234
modules <- ExceptT $ I.loadAllModules inputFiles
233-
(exts, env) <- ExceptT . I.runMake . I.make $ map (second CST.pureResult) modules
234-
namesEnv <- fmap fst . runWriterT $ foldM P.externsEnv P.primEnv exts
235-
pure (exts, namesEnv, env)
235+
ExceptT . I.runMake . I.make $ map (second CST.pureResult) modules
236236
case e of
237237
Left err -> print err >> exitFailure
238-
Right (exts, namesEnv, env) -> server exts namesEnv env port
238+
Right (exts, env) -> server exts env port

0 commit comments

Comments
 (0)