module System.Process.Text.Lazy where
import Control.DeepSeq (force)
import Control.Exception
import qualified Control.Exception as C (evaluate)
import Control.Monad
import Data.ListLike (null)
import Data.ListLike.IO (hGetContents, hPutStr)
import Data.Text.Lazy (Text)
import Prelude hiding (null)
import System.Process
import qualified System.Process.ListLike as LL
import System.Exit (ExitCode)
import System.IO (hClose, hFlush)
import Utils (forkWait)
instance LL.ListLikeProcessIO Text Char where
forceOutput = C.evaluate . force
readProcessWithExitCode :: FilePath -> [String] -> Text -> IO (ExitCode, Text, Text)
readProcessWithExitCode = LL.readProcessWithExitCode
readCreateProcessWithExitCode :: CreateProcess -> Text -> IO (ExitCode, Text, Text)
readCreateProcessWithExitCode = LL.readCreateProcessWithExitCode