primdata-0.1.2.2: IO.hs
{-# language UnboxedTuples, TypeOperators, MagicHash, BlockArguments #-}
module IO (IO(..), unIO, runIO) where
import GHC.Types
import GHC.Exts
unIO :: IO a -> (State# RealWorld -> (# State# RealWorld, a #))
unIO (IO f) = f
{-# inline unIO #-}
runIO :: IO a -> a
runIO (IO f) = runRW# \s -> case f s of (# _ , a #) -> a
{-# inline runIO #-}