packages feed

monad-throw-exit-0.1.0.0: app/example.hs

{-# LANGUAGE LambdaCase #-}

import           System.Environment     (getArgs)
import           System.Exit.MonadThrow


main :: IO ()
main = getArgs >>= \case
  ["exitWith", code] -> exitWith . ExitFailure $ read code
  ["exitFailure"] -> exitFailure
  ["exitSuccess"] -> exitSuccess
  _ -> fail "Unknown command"