Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Synopsis
- data SystemProcess :: Effect where
- ReadStdout :: SystemProcess m ByteString
- ReadStderr :: SystemProcess m ByteString
- WriteStdin :: ByteString -> SystemProcess m ()
- Pid :: SystemProcess m Pid
- Signal :: Signal -> SystemProcess m ()
- Wait :: SystemProcess m ExitCode
- wait :: forall r. Member SystemProcess r => Sem r ExitCode
- signal :: forall r. Member SystemProcess r => Signal -> Sem r ()
- pid :: forall r. Member SystemProcess r => Sem r Pid
- writeStdin :: forall r. Member SystemProcess r => ByteString -> Sem r ()
- readStderr :: forall r. Member SystemProcess r => Sem r ByteString
- readStdout :: forall r. Member SystemProcess r => Sem r ByteString
- withSystemProcess :: forall param err r. Member (Scoped param (SystemProcess !! err)) r => param -> InterpreterFor (SystemProcess !! err) r
- withSystemProcess_ :: forall err r. Member (Scoped_ (SystemProcess !! err)) r => InterpreterFor (SystemProcess !! err) r
- interrupt :: Member SystemProcess r => Sem r ()
- term :: Member SystemProcess r => Sem r ()
- kill :: Member SystemProcess r => Sem r ()
Documentation
data SystemProcess :: Effect where Source #
Low-level interface for a process, operating on raw chunks of bytes. Interface is modeled after System.Process.
ReadStdout :: SystemProcess m ByteString | Read a chunk from stdout. |
ReadStderr :: SystemProcess m ByteString | Read a chunk from stderr. |
WriteStdin :: ByteString -> SystemProcess m () | Write a |
Pid :: SystemProcess m Pid | Obtain the process ID. |
Signal :: Signal -> SystemProcess m () | Send a |
Wait :: SystemProcess m ExitCode | Wait for the process to terminate, returning its exit code. |
wait :: forall r. Member SystemProcess r => Sem r ExitCode Source #
Wait for the process to terminate, returning its exit code.
signal :: forall r. Member SystemProcess r => Signal -> Sem r () Source #
Send a Signal
to the process.
writeStdin :: forall r. Member SystemProcess r => ByteString -> Sem r () Source #
Write a ByteString
to stdin.
readStderr :: forall r. Member SystemProcess r => Sem r ByteString Source #
Read a chunk from stderr.
readStdout :: forall r. Member SystemProcess r => Sem r ByteString Source #
Read a chunk from stdout.
withSystemProcess :: forall param err r. Member (Scoped param (SystemProcess !! err)) r => param -> InterpreterFor (SystemProcess !! err) r Source #
Create a scoped resource for SystemProcess
.
The process configuration may depend on the provided value of type param
.
withSystemProcess_ :: forall err r. Member (Scoped_ (SystemProcess !! err)) r => InterpreterFor (SystemProcess !! err) r Source #
Create a scoped resource for SystemProcess
.
The process configuration is provided to the interpreter statically.