process-streaming-0.0.1: Streaming interface to system processes.

Safe HaskellSafe-Inferred

System.Process.Lens

Description

Lenses and traversals for CreateProcess and related types.

Synopsis

Documentation

_cmdspec :: forall f. Functor f => (CmdSpec -> f CmdSpec) -> CreateProcess -> f CreateProcessSource

 _cmdspec :: Lens' CreateProcess CmdSpec 

_ShellCommand :: forall m. Applicative m => (String -> m String) -> CmdSpec -> m CmdSpecSource

 _ShellCommand :: Prism' CmdSpec String

_RawCommand :: forall m. Applicative m => ((FilePath, [String]) -> m (FilePath, [String])) -> CmdSpec -> m CmdSpecSource

 _RawCommand :: Prism' CmdSpec (FilePath,[String])

_cwd :: forall f. Functor f => (Maybe FilePath -> f (Maybe FilePath)) -> CreateProcess -> f CreateProcessSource

 _cwd :: Lens' CreateProcess (Maybe FilePath)

_env :: forall f. Functor f => (Maybe [(String, String)] -> f (Maybe [(String, String)])) -> CreateProcess -> f CreateProcessSource

 _env :: Lens' CreateProcess (Maybe [(String,String)])

stream3 :: forall f. Functor f => ((StdStream, StdStream, StdStream) -> f (StdStream, StdStream, StdStream)) -> CreateProcess -> f CreateProcessSource

A lens for the (std_in,std_out,std_err) triplet.

 stream3 :: Lens' CreateProcess (StdStream,StdStream,StdStream)

pipe3 :: (StdStream, StdStream, StdStream)Source

 pipe3 = (CreatePipe,CreatePipe,CreatePipe)

pipe2 :: (StdStream, StdStream, StdStream)Source

Specifies CreatePipe for std_out and std_err; std_in is set to Inherit.

 pipe3 = (Inherit,CreatePipe,CreatePipe)

pipe2h :: Handle -> (StdStream, StdStream, StdStream)Source

Specifies CreatePipe for std_out and std_err; std_in is taken as parameter.

handle3 :: forall m. Applicative m => (((Handle, Handle, Handle), ProcessHandle) -> m ((Handle, Handle, Handle), ProcessHandle)) -> (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle) -> m (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle)Source

A Prism for the return value of createProcess that removes the Maybes from stdin, stdout and stderr or fails to match if any of them is Nothing.

 handle3 :: Prism' (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle) -> ((Handle, Handle, Handle), ProcessHandle)

handle2 :: forall m. Applicative m => (((Handle, Handle), ProcessHandle) -> m ((Handle, Handle), ProcessHandle)) -> (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle) -> m (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle)Source

A Prism for the return value of createProcess that removes the Maybes from stdout and stderr or fails to match if any of them is Nothing.

 handle2 :: Prism' (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle) -> ((Handle, Handle), ProcessHandle)