module Hat.SystemBuiltinTypes
(ExitCode(..), aExitFailure, aExitSuccess,
(+&=$^=&=$@==))
where
import qualified Prelude
import qualified Hat.Hat as T
import qualified Hat.PreludeBasic
import qualified Hat.PreludeBuiltinTypes
import Hat.Prelude
data ExitCode = ExitSuccess
| ExitFailure (T.R Int)
instance T.WrapVal ExitCode where
wrapVal pwrapVal kwrapVal@ExitSuccess p
= T.R kwrapVal (T.mkValueUse p pwrapVal aExitSuccess)
wrapVal pwrapVal
kwrapVal@(ExitFailure (T.R _ z1wrapVal)) p
= T.R kwrapVal
(T.mkValueApp1 p pwrapVal aExitFailure z1wrapVal)
instance Eq ExitCode where
(%==) !== p = T.ufun2 (+&=$^=&=$@==) (%==) p (*==)
where (T.R ExitSuccess _ *== T.R ExitSuccess _) p
= T.con0 T.mkNoSrcPos p Hat.PreludeBuiltinTypes.True
Hat.PreludeBuiltinTypes.aTrue
(T.R (ExitFailure fy1) _ *== T.R (ExitFailure fy2) _)
p
= T.uwrapForward p
((Hat.PreludeBasic.*&&)
(T.uap2 T.mkNoSrcPos p
((Hat.PreludeBasic.!==) T.mkNoSrcPos p)
fy1
fy2)
(T.con0 T.mkNoSrcPos p Hat.PreludeBuiltinTypes.True
Hat.PreludeBuiltinTypes.aTrue)
p)
(_ *== _) p
= T.con0 T.mkNoSrcPos p Hat.PreludeBuiltinTypes.False
Hat.PreludeBuiltinTypes.aFalse
instance Ord ExitCode where
gcompare pcompare p
= T.ufun2 c4v31v4v33compare pcompare p hcompare
where hcompare (T.R (ExitFailure fy3) _)
(T.R (ExitFailure fy4) _) p
= T.uap2 T.mkNoSrcPos p (gcompare T.mkNoSrcPos p) fy3
fy4
hcompare fy1 fy2 p
= T.uap2 T.mkNoSrcPos p (gcompare T.mkNoSrcPos p)
(T.uwrapForward p (hlocalFromEnum fy1 p))
(T.uwrapForward p (hlocalFromEnum fy2 p))
where glocalFromEnum plocalFromEnum p
= T.ufun1 c4v31v4v33localFromEnum plocalFromEnum p
hlocalFromEnum
alocalFromEnum = c4v31v4v33localFromEnum
hlocalFromEnum (T.R ExitSuccess _) p
= T.uap1 T.mkNoSrcPos p
(Hat.PreludeBasic.gfromInteger T.mkNoSrcPos p)
(T.conInteger T.mkNoSrcPos p (0))
:: T.R Hat.PreludeBuiltinTypes.Int
hlocalFromEnum (T.R (ExitFailure _) _) p
= T.uap1 T.mkNoSrcPos p
(Hat.PreludeBasic.gfromInteger T.mkNoSrcPos p)
(T.conInteger T.mkNoSrcPos p (1))
:: T.R Hat.PreludeBuiltinTypes.Int
hlocalFromEnum _ p = T.fatal p
instance Read ExitCode where
greadsPrec preadsPrec p
= T.ufun1 c4v36v4v39readsPrec preadsPrec p hreadsPrec
where hreadsPrec fy1 p
= T.uap2 T.mkNoSrcPos p
(Hat.PreludeBasic.galt T.mkNoSrcPos p)
(T.uwrapForward p
(hreadParen
(T.con0 T.mkNoSrcPos p Hat.PreludeBuiltinTypes.False
Hat.PreludeBuiltinTypes.aFalse)
(T.uwrapForward p
(Hat.PreludeBasic.hthenLex
(T.uap1 T.mkNoSrcPos p
(Hat.PreludeBasic.gyield T.mkNoSrcPos p)
(T.con0 T.mkNoSrcPos p ExitSuccess
aExitSuccess))
(T.fromLitString T.mkNoSrcPos p "ExitSuccess")
p))
p))
(T.uwrapForward p
(hreadParen
(T.uap2 T.mkNoSrcPos p ((!>) T.mkNoSrcPos p) fy1
(T.uap1 T.mkNoSrcPos p
(Hat.PreludeBasic.gfromInteger T.mkNoSrcPos p)
(T.conInteger T.mkNoSrcPos p (9))))
(T.uap2 T.mkNoSrcPos p
(Hat.PreludeBasic.gthenAp T.mkNoSrcPos p)
(T.uwrapForward p
(Hat.PreludeBasic.hthenLex
(T.uap1 T.mkNoSrcPos p
(Hat.PreludeBasic.gyield T.mkNoSrcPos p)
(T.pa0 ExitFailure T.cn1 T.mkNoSrcPos p
aExitFailure))
(T.fromLitString T.mkNoSrcPos p
"ExitFailure")
p))
(T.uap1 T.mkNoSrcPos p
(greadsPrec T.mkNoSrcPos p)
(T.uap1 T.mkNoSrcPos p
(Hat.PreludeBasic.gfromInteger T.mkNoSrcPos
p)
(T.conInteger T.mkNoSrcPos p (10)))))
p))
instance Show ExitCode where
gshowsPrec pshowsPrec p
= T.ufun2 c4v42v4v45showsPrec pshowsPrec p hshowsPrec
where hshowsPrec fy1 (T.R ExitSuccess _) p
= T.uap1 T.mkNoSrcPos p (gshowString T.mkNoSrcPos p)
(T.fromLitString T.mkNoSrcPos p "ExitSuccess")
hshowsPrec fy1 (T.R (ExitFailure fy2) _) p
= T.uwrapForward p
(hshowParen
(T.uap2 T.mkNoSrcPos p ((!>) T.mkNoSrcPos p) fy1
(T.uap1 T.mkNoSrcPos p
(Hat.PreludeBasic.gfromInteger T.mkNoSrcPos p)
(T.conInteger T.mkNoSrcPos p (9))))
(T.uap2 T.mkNoSrcPos p ((!.) T.mkNoSrcPos p)
(T.uap1 T.mkNoSrcPos p (gshowString T.mkNoSrcPos p)
(T.fromLitString T.mkNoSrcPos p "ExitFailure "))
(T.uap2 T.mkNoSrcPos p (gshowsPrec T.mkNoSrcPos p)
(T.uap1 T.mkNoSrcPos p
(Hat.PreludeBasic.gfromInteger T.mkNoSrcPos p)
(T.conInteger T.mkNoSrcPos p (10)))
fy2))
p)
hshowsPrec _ _ p = T.fatal p
aExitFailure
= T.mkConstructor tSystemBuiltinTypes 30031 30041 3
(1)
"ExitFailure"
aExitSuccess
= T.mkConstructor tSystemBuiltinTypes 30017 30027 3
(0)
"ExitSuccess"
(+&=$^=&=$@==)
= T.mkVariable tSystemBuiltinTypes 40027 40028 3 (1)
"=="
Prelude.False
c4v31v4v33localFromEnum
= T.mkVariable tSystemBuiltinTypes 40031 40033 3 (1)
"localFromEnum"
Prelude.True
c4v31v4v33compare
= T.mkVariable tSystemBuiltinTypes 40031 40033 3 (1)
"compare"
Prelude.False
c4v36v4v39readsPrec
= T.mkVariable tSystemBuiltinTypes 40036 40039 3 (1)
"readsPrec"
Prelude.False
c4v42v4v45showsPrec
= T.mkVariable tSystemBuiltinTypes 40042 40045 3 (1)
"showsPrec"
Prelude.False
p = T.mkRoot
tSystemBuiltinTypes
= T.mkModule "SystemBuiltinTypes"
"SystemBuiltinTypes.hs"
Prelude.False