!d_NH      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG2019 Emily PillmoreBSD$Emily Pillmore <emilypi@cohomolo.gy> Experimental TypeFamiliesSafeHV lens-process'Classy prism into the raw command of a H Examples:<f :: IsRaw a => a -> Maybe FilePath; f = preview (_Raw . _1)(f $ _RawCommand # ("/bin/ls", ["ls -l"])Just "/bin/ls" lens-process)Classy prism into the shell command of a H Examples:7f :: IsShell a => a -> Maybe String; f = preview _Shellf $ _ShellCommand # "ls -l" Just "ls -l" lens-processA prism into the I case of a H Examples:_ShellCommand # "ls -l"ShellCommand "ls -l"%ShellCommand "ls -l" ^? _ShellCommand Just "ls -l",RawCommand "/bin/ls" ["-l"] ^? _ShellCommandNothing lens-processA prism into the J case of a H Examples:*RawCommand "/bin/ls" ["-l"] ^? _RawCommandJust ("/bin/ls",["-l"]),RawCommand "/bin/ls" ["-l"] ^? _ShellCommandNothing/RawCommand "/bin/ls" ["-l"] ^. _RawCommand . _1 "/bin/ls"/RawCommand "/bin/ls" ["-l"] ^. _RawCommand . _2["-l"] lens-processK into the arguments of a command Examples:(RawCommand "/bin/ls" ["-l"] ^. arguments["-l"] lens-process-Append an argument to the argument list of a J Examples:*arguing "-h" $ RawCommand "/bin/ls" ["-l"] RawCommand "/bin/ls" ["-l","-h"]7arguing "-h" (RawCommand "/bin/ls" ["-l"]) ^. arguments ["-l","-h"] lens-processLift a L into a type via I with a prism into the Examples:shellOf @CmdSpec "ls"ShellCommand "ls"  lens-processLift a M' and list of arguments into a type via J with a prism into the command Examples:rawOf @CmdSpec "/bin/ls" ["-l"]RawCommand "/bin/ls" ["-l"]   2019 Emily PillmoreBSD$Emily Pillmore <emilypi@cohomolo.gy> ExperimentalTypeFamilies, Rank2TypesSafeSX,  lens-process#Classy lens for types with a stderr lens-process#Classy lens for types with a stdout lens-process"Classy lens for types with a stdin lens-processLens into the N entry of the O record lens-processLens into the P entry of the O record lens-processLens into the Q entry of the O record lens-processLens into the R entry of the O record lens-processLens into the S entry of the O record lens-processLens into the T entry of the O record lens-processLens into the U entry of the O record lens-processLens into the V entry of the O record lens-processLens into the W entry of the O record lens-processLens into the X entry of the O record lens-processLens into the Y entry of the O record lens-processLens into the Z entry of the O record lens-processLens into the [ entry of the O record lens-processLens into the \ entry of the O record  lens-processLens into the ] entry of the O record    2019 Emily PillmoreBSD$Emily Pillmore <emilypi@cohomolo.gy> ExperimentalTypeFamilies, Rank2TypesSafe9' lens-process)A convenient handler for the output of a ^) call. This data containes 4 components: %a handle to stdin if it was requested&a handle to stdout if it was requested&a handle to stderr if it was requestedya process handle, containing a pid lock, information regarding ctcl-c delegation, and closed/open handle status info.- lens-process)A lens into the stdin handle if requested. lens-process*A lens into the stdout handle if requested/ lens-process*A lens into the stderr handle if requested0 lens-processA lens into the process handle1 lens-processFAn iso between the ProcessHandler data and its product representation2 lens-processA default for a O '()*+,-./012 '()*+,1-./022019 Emily PillmoreBSD$Emily Pillmore <emilypi@cohomolo.gy> ExperimentalTypeFamilies, Rank2TypesSafeHSVXW 3 lens-process3Class constraint proving a type has a prism into a _ via a ` structure. Any a will have a prism into b - it is just an overwrite to b.5 lens-process3Class constraint proving a type has a prism into a _ via a ` structure. Any a will have a prism into c - it is just an overwrite to c7 lens-process3Class constraint proving a type has a prism into a _ via a ` structure.9 lens-process4Class constraint proving a type has a prism into an d structure. Any a will have a prism into d - it is just an overwrite to d; lens-processA prism into the d structure of a a Examples:_Inherit # CreatePipeInherit< lens-processA prism into the ` structure's Handle for a a Examples:_UseHandle # System.stdinUseHandle {handle: <stdin>}= lens-processA prism into the c structure of a a Examples:_CreatePipe # Inherit CreatePipe> lens-processA prism into the b structure of a a Examples:_NoStream # CreatePipeNoStream? lens-process;Inject a handle into something with a prism into the handle Examples:#usehandleOf @StdStream System.stdinUseHandle {handle: <stdin>}@ lens-processGiven a lens into a a, overwrite to d5 so that the stream inherits from its parent process Examples:inheriting ($) CreatePipeInheritA lens-processGiven a lens into a a, overwrite to c. Examples:piping ($) NoStream CreatePipeB lens-processGiven a lens into a a% and a handle, set the handle using `g. Note that this is the only really interesting case for anything with a lens into a handle inculding a. Examples:3handling ($) System.stdin $ UseHandle System.stdoutUseHandle {handle: <stdin>}"handling ($) System.stdin NoStreamNoStream!handling ($) System.stdin InheritInheritC lens-processGiven a lens into a a , set to b Examples:nostreaming ($) InheritNoStream3456789:;<=>?@ABC;<=>9:785634?@ABC2019 Emily PillmoreBSD$Emily Pillmore <emilypi@cohomolo.gy> ExperimentalTypeFamilies, Rank2TypesSafeZ2  '()*+,-./013456789:;<=>2'()*+,;<=>1 -./09:785634 2019 Emily PillmoreBSD$Emily Pillmore <emilypi@cohomolo.gy> ExperimentalTypeFamilies, RankNTypesSafeSX]r;  '()*+,-./013456789:;<=>?@ABC;'()*+,;<=>1 -./09:785634 @ABC ?e      !"#$%&'()*+,-../0123456789:;<=>?@ABCDEFGHIJKLMNOPNOQNORSTUVWXVYZNO[NO\NO]NO^NO_NO`NOaNObNOcNOdNOeNOfNOgNOhNOiNOjNklVmnNOoNOpNOqNOrNOstlens-process-0.2.0.2-inplaceSystem.Process.Lens.CommandSpec!System.Process.Lens.CreateProcess"System.Process.Lens.ProcessHandlerSystem.Process.Lens.StdStreamSystem.Process.Lens.OpticsSystem.Process.LensIsRaw_RawIsShell_Shell _ShellCommand _RawCommand argumentsarguingshellOfrawOf$fIsShellCmdSpec$fIsRawCmdSpec HasStderr_Stderr HasStdout_StdoutHasStdin_Stdincmdspec_cwd_env_stdin_stdout_stderr_closefds creategroup delegatectlc newsession detachconsolecreatenewconsole childgroup childuseruseprocessjobs$fHasStdinCreateProcess$fHasStdinStdStream$fHasStdoutCreateProcess$fHasStdoutStdStream$fHasStderrCreateProcess$fHasStderrStdStreamProcessHandler_hstdin_hstdout_hstderr_hhandlehstdinhstdouthstderrhhandle_HandlerdefaultCreateProcess IsNoStream _NoStreams IsCreatePipe _CreatesPipe IsUseHandle _UsesHandle IsInherit _Inherits_Inherit _UseHandle _CreatePipe _NoStream usehandleOf inheritingpipinghandling nostreaming$fIsInheritStdStream$fIsUseHandleStdStream$fIsCreatePipeStdStream$fIsNoStreamStdStreamprocess-1.6.3.0System.Process.CommonCmdSpec ShellCommand RawCommand lens-4.17-5HbZoayh1O7EFyZkdtb4P8Control.Lens.Type Traversal'baseGHC.BaseStringGHC.IOFilePathcmdspec CreateProcesscwdenvstd_instd_outstd_err close_fds create_group delegate_ctlc new_sessiondetach_consolecreate_new_console child_group child_useruse_process_jobsSystem.Process createProcessGHC.IO.Handle.TypesHandle UseHandle StdStreamNoStream CreatePipeInherit