1{-# LANGUAGE UnboxedSums, MagicHash #-}
2module Lib (flip, getInt) where
3import GHC.Exts
4import Prelude (Int)
5
6{-# NOINLINE flip #-}
7
8flip :: (# Int | Int# #) -> (# Int# | Int #)
9flip (# i | #) = (# | i #)
10flip (# | i #) = (# i | #)
11
12{-# NOINLINE getInt #-}
13
14getInt :: (# Int# | Int #) -> Int
15getInt (# i | #) = I# i
16getInt (# | i #) = i
17