{-# LINE 1 "libraries/libiserv/src/GHCi/Utils.hsc" #-}
{-# LANGUAGE CPP #-}
module GHCi.Utils
    ( getGhcHandle
    ) where

import Foreign.C
import GHC.IO.Handle (Handle())

{-# LINE 20 "libraries/libiserv/src/GHCi/Utils.hsc" #-}
import System.Posix

{-# LINE 22 "libraries/libiserv/src/GHCi/Utils.hsc" #-}



-- | Gets a GHC Handle File description from the given OS Handle or POSIX fd.


{-# LINE 48 "libraries/libiserv/src/GHCi/Utils.hsc" #-}
getGhcHandle :: CInt -> IO Handle
getGhcHandle :: CInt -> IO Handle
getGhcHandle CInt
fd     = Fd -> IO Handle
fdToHandle (Fd -> IO Handle) -> Fd -> IO Handle
forall a b. (a -> b) -> a -> b
$ CInt -> Fd
Fd CInt
fd

{-# LINE 51 "libraries/libiserv/src/GHCi/Utils.hsc" #-}