0 | module System.UV.Data.Signal
2 | import Derive.Prelude
4 | %language ElabReflection
9 | data SigCode : Type where
21 | %runElab derive "SigCode" [Show,Eq]
24 | sigToCode : SigCode -> Bits32
25 | sigToCode SIGABRT = 6
26 | sigToCode SIGFPE = 8
27 | sigToCode SIGHUP = 1
28 | sigToCode SIGILL = 4
29 | sigToCode SIGINT = 2
30 | sigToCode SIGQUIT = 3
31 | sigToCode SIGSEGV = 11
32 | sigToCode SIGTRAP = 5
33 | sigToCode SIGUSR1 = 10
34 | sigToCode SIGUSR2 = 12
37 | sigFromCode : Bits32 -> SigCode
38 | sigFromCode 6 = SIGABRT
39 | sigFromCode 8 = SIGFPE
40 | sigFromCode 1 = SIGHUP
41 | sigFromCode 4 = SIGILL
42 | sigFromCode 2 = SIGINT
43 | sigFromCode 3 = SIGQUIT
44 | sigFromCode 11 = SIGSEGV
45 | sigFromCode 5 = SIGTRAP
46 | sigFromCode 10 = SIGUSR1
47 | sigFromCode _ = SIGUSR2