rawfilepath-1.1.1: src/RawFilePath/Process/Internal.hs
{-# LANGUAGE InterruptibleFFI #-}
module RawFilePath.Process.Internal (
c_terminateProcess,
c_getProcessExitCode,
c_waitForProcess,
) where
import Foreign
import Foreign.C
import RawFilePath.Process.Common
import System.Posix.Types (CPid (..))
foreign import ccall unsafe "terminateProcess"
c_terminateProcess
:: PHANDLE
-> IO CInt
foreign import ccall unsafe "getProcessExitCode"
c_getProcessExitCode
:: PHANDLE
-> Ptr CInt
-> IO CInt
foreign import ccall interruptible "waitForProcess" -- NB. safe - can block
c_waitForProcess
:: PHANDLE
-> Ptr CInt
-> IO CInt