hat-2.8.0.0: Hat/System.hs
module Hat.System
(ExitCode(ExitSuccess, ExitFailure), aExitSuccess,
aExitFailure, ggetArgs, ggetProgName, ggetEnv,
agetEnv, hgetEnv, gsystem, asystem, hsystem,
gexitWith, aexitWith, hexitWith, gexitFailure)
where
import qualified Prelude
import qualified Hat.Hat as T
import qualified Hat.PreludeBasic
import qualified Hat.PreludeBuiltinTypes
import Hat.Prelude
import Hat.PreludeBuiltinTypes as T
import Hat.SystemBuiltinTypes as T
import Hat.SystemBuiltin as T
import qualified System.Cmd as Cmd
import qualified System.Environment as Environment
import qualified System.Exit as Exit
ggetArgs ::
T.RefSrcPos -> T.RefExp -> T.R (IO (T.List String))
ggetArgs pgetArgs p = T.uconstUse pgetArgs p sgetArgs
sgetArgs
= T.uconstDef p agetArgs
(\ p ->
T.fromIO (T.fromList T.fromString) p
Environment.getArgs)
ggetProgName ::
T.RefSrcPos -> T.RefExp -> T.R (IO String)
ggetProgName pgetProgName p
= T.uconstUse pgetProgName p sgetProgName
sgetProgName
= T.uconstDef p agetProgName
(\ p ->
T.fromIO T.fromString p Environment.getProgName)
ggetEnv ::
T.RefSrcPos ->
T.RefExp -> T.R (T.Fun String (IO String))
ggetEnv pgetEnv p = T.ufun1 agetEnv pgetEnv p hgetEnv
hgetEnv z1getEnv kgetEnv
= T.fromIO T.fromString kgetEnv
(Environment.getEnv (T.toString kgetEnv z1getEnv))
gsystem ::
T.RefSrcPos ->
T.RefExp -> T.R (T.Fun String (IO ExitCode))
gsystem psystem p = T.ufun1 asystem psystem p hsystem
hsystem z1system ksystem
= T.fromIO T.fromExitCode ksystem
(Cmd.system (T.toString ksystem z1system))
gexitWith ::
T.RefSrcPos ->
T.RefExp -> T.R (T.Fun ExitCode (IO a))
gexitWith pexitWith p
= T.ufun1 aexitWith pexitWith p hexitWith
hexitWith z1exitWith kexitWith
= T.fromIO T.fromId kexitWith
(Exit.exitWith (T.toExitCode kexitWith z1exitWith))
gexitFailure :: T.RefSrcPos -> T.RefExp -> T.R (IO a)
gexitFailure pexitFailure p
= T.uconstUse pexitFailure p sexitFailure
sexitFailure
= T.uconstDef p aexitFailure
(\ p -> T.fromIO T.fromId p Exit.exitFailure)
aexitFailure
= T.mkVariable tSystem 230001 240015 3 (0)
"exitFailure"
Prelude.False
aexitWith
= T.mkVariable tSystem 210001 220012 3 (1) "exitWith"
Prelude.False
agetArgs
= T.mkVariable tSystem 130001 140011 3 (0) "getArgs"
Prelude.False
agetEnv
= T.mkVariable tSystem 170001 180010 3 (1) "getEnv"
Prelude.False
agetProgName
= T.mkVariable tSystem 150001 160015 3 (0)
"getProgName"
Prelude.False
asystem
= T.mkVariable tSystem 190001 200010 3 (1) "system"
Prelude.False
p = T.mkRoot
tSystem
= T.mkModule "System" "System.hs" Prelude.False