File: Unsafe.hs

package info (click to toggle)
haskell-ghc-lib-parser 9.0.2.20211226-2
  • links: PTS
  • area: main
  • in suites: bookworm
  • size: 8,668 kB
  • sloc: haskell: 94,206; ansic: 1,258; makefile: 12
file content (22 lines) | stat: -rw-r--r-- 432 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{-
(c) The University of Glasgow, 2000-2006
-}

{-# LANGUAGE CPP, MagicHash, UnboxedTuples #-}

module GHC.Utils.IO.Unsafe
   ( inlinePerformIO,
   )
where

#include "GhclibHsVersions.h"

import GHC.Prelude ()

import GHC.Exts
import GHC.IO   (IO(..))

-- Just like unsafeDupablePerformIO, but we inline it.
{-# INLINE inlinePerformIO #-}
inlinePerformIO :: IO a -> a
inlinePerformIO (IO m) = case m realWorld# of (# _, r #)   -> r