git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
Merge pull request #1353 from purescript/1321

Fix #1321

commitf2ce44ff48777da8f8fd19210208e13dcb9f3f48 authorPhil Freeman <paf31@cantab.net> dateMon 10 Aug 2015, 09:39 (11 years ago) parent48c6ad21df1c8d
2 files changed+15−7
src/Language/PureScript/Errors.hs+13−5 src/Language/PureScript/Publish/ErrorsWarnings.hs+2−2
src/Language/PureScript/Errors.hs+13−5
@@ -747,24 +747,32 @@ prettyPrintSingleError full level e = prettyPrintErrorMessage <$> onTypesInError
747747-- Pretty print multiple errors
748748--
749749prettyPrintMultipleErrors :: Bool -> MultipleErrors -> String
750−prettyPrintMultipleErrors full = flip evalState M.empty . prettyPrintMultipleErrorsWith Error "Error found:" "Multiple errors found:" full
750+prettyPrintMultipleErrors full = renderBox . prettyPrintMultipleErrorsBox full
751751
752752-- |
753753-- Pretty print multiple warnings
754754--
755755prettyPrintMultipleWarnings :: Bool -> MultipleErrors -> String
756−prettyPrintMultipleWarnings full = flip evalState M.empty . prettyPrintMultipleErrorsWith Warning "Warning found:" "Multiple warnings found:" full
756+prettyPrintMultipleWarnings full = renderBox . prettyPrintMultipleWarningsBox full
757757
758−prettyPrintMultipleErrorsWith :: Level -> String -> String -> Bool -> MultipleErrors -> State UnknownMap String
758+-- | Pretty print warnings as a Box
759+prettyPrintMultipleWarningsBox :: Bool -> MultipleErrors -> Box.Box
760+prettyPrintMultipleWarningsBox full = flip evalState M.empty . prettyPrintMultipleErrorsWith Warning "Warning found:" "Multiple warnings found:" full
761+
762+-- | Pretty print errors as a Box
763+prettyPrintMultipleErrorsBox :: Bool -> MultipleErrors -> Box.Box
764+prettyPrintMultipleErrorsBox full = flip evalState M.empty . prettyPrintMultipleErrorsWith Error "Error found:" "Multiple errors found:" full
765+
766+prettyPrintMultipleErrorsWith :: Level -> String -> String -> Bool -> MultipleErrors -> State UnknownMap Box.Box
759767prettyPrintMultipleErrorsWith level intro _ full (MultipleErrors [e]) = do
760768 result <- prettyPrintSingleError full level e
761− return $ renderBox $
769+ return $
762770 Box.vcat Box.left [ Box.text intro
763771 , result
764772 ]
765773prettyPrintMultipleErrorsWith level _ intro full (MultipleErrors es) = do
766774 result <- forM es $ (liftM $ Box.moveRight 2) . prettyPrintSingleError full level
767− return $ renderBox $
775+ return $
768776 Box.vcat Box.left [ Box.text intro
769777 , Box.vsep 1 Box.left result
770778 ]
src/Language/PureScript/Publish/ErrorsWarnings.hs+2−2
@@ -198,12 +198,12 @@ displayUserError e = case e of
198198 ParseAndDesugarError (D.SortModulesError err) ->
199199 vcat
200200 [ para "Error in sortModules:"
201− , indented (para (P.prettyPrintMultipleErrors False err))
201+ , indented (P.prettyPrintMultipleErrorsBox False err)
202202 ]
203203 ParseAndDesugarError (D.DesugarError err) ->
204204 vcat
205205 [ para "Error while desugaring:"
206− , indented (para (P.prettyPrintMultipleErrors False err))
206+ , indented (P.prettyPrintMultipleErrorsBox False err)
207207 ]
208208 DirtyWorkingTree ->
209209 para (concat