module RIO.Prelude.Exit
( exitFailure
, exitSuccess
, exitWith
, System.Exit.ExitCode(..)
) where
import Control.Monad.IO.Class
import qualified System.Exit ( ExitCode (..)
, exitFailure
, exitSuccess
, exitWith
)
exitFailure :: MonadIO m => m a
exitFailure :: forall (m :: * -> *) a. MonadIO m => m a
exitFailure = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a. IO a
System.Exit.exitFailure
exitSuccess :: MonadIO m => m a
exitSuccess :: forall (m :: * -> *) a. MonadIO m => m a
exitSuccess = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a. IO a
System.Exit.exitSuccess
exitWith :: MonadIO m => System.Exit.ExitCode -> m a
exitWith :: forall (m :: * -> *) a. MonadIO m => ExitCode -> m a
exitWith ExitCode
code = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a. ExitCode -> IO a
System.Exit.exitWith ExitCode
code