aboutsummaryrefslogtreecommitdiff
path: root/src/Exit.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Exit.hs')
-rw-r--r--src/Exit.hs23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/Exit.hs b/src/Exit.hs
new file mode 100644
index 0000000..1a08931
--- /dev/null
+++ b/src/Exit.hs
@@ -0,0 +1,23 @@
+{-# LANGUAGE OverloadedStrings #-}
+
+module Exit
+ ( exitWithParsingError
+ ) where
+
+import System.IO (stderr)
+import System.Exit (exitFailure)
+
+import Data.Text (Text)
+import qualified Data.Text as T
+import qualified Data.Text.IO as T
+
+exitWithParsingError :: FilePath -> Text -> IO ()
+exitWithParsingError path err = do
+ T.hPutStr stderr $
+ T.concat
+ [ "Error while parsing file "
+ , T.pack path
+ , ":\n"
+ , err
+ ]
+ exitFailure