2{      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz Safe-Inferred+HM  (_cmdspec :: Lens' CreateProcess CmdSpec  &_ShellCommand :: Prism' CmdSpec String 1_RawCommand :: Prism' CmdSpec (FilePath,[String]) ,_cwd :: Lens' CreateProcess (Maybe FilePath) 5_env :: Lens' CreateProcess (Maybe [(String,String)])A lens for the (std_in,std_out,std_err) triplet. >streams :: Lens' CreateProcess (StdStream,StdStream,StdStream) A Lens for the return value of { that focuses on the handles. thandles :: Lens' (Maybe Handle, Maybe Handle, Maybe Handle,ProcessHandle) (Maybe Handle, Maybe Handle, Maybe Handle) A Prism@ that matches when none of the standard streams have been piped. Anohandles :: Prism' (Maybe Handle, Maybe Handle, Maybe Handle) ()A Prism that matches when only stdin has been piped. Fhandlesi :: Prism' (Maybe Handle, Maybe Handle, Maybe Handle) (Handle)A Prism that matches when all three stdin, stdout and stderr have been piped. Xhandlesioe :: Prism' (Maybe Handle, Maybe Handle, Maybe Handle) (Handle, Handle, Handle)A Prism that matches when only stdout and stderr have been piped. Ohandlesoe :: Prism' (Maybe Handle, Maybe Handle, Maybe Handle) (Handle, Handle)A Prism that matches when only stdout has been piped. Fhandleso :: Prism' (Maybe Handle, Maybe Handle, Maybe Handle) (Handle)A Prism that matches when only stderr has been piped. Fhandlese :: Prism' (Maybe Handle, Maybe Handle, Maybe Handle) (Handle)    None  -24:BHM +An individual stage in a process pipeline. aA configuration parameter used in functions that combine lines of text from multiple streams."A "f represents a computation that completely drains a producer, but may fail early with an error of type e. $An alternative to *8 for defining what to do with the standard streams. $ is an instance of | , unlike *. With $;, the standard streams are always piped. The values of std_in, std_out and std_err in the } record are ignored.*A *I determines what standard streams will be piped and what to do with them.*The user doesn't need to manually set the ~,  and  fields of the } record to , this is done automatically. A * is parametrized by the type e8 of errors that can abort the processing of the streams. maps over the encoding error.  is useful to massage errors. creates a "( that does nothing besides draining the . * executes its arguments concurrently. The G is forked so that each argument receives its own copy of the data. creates a $ that writes nothing to stdin and drains stdout and stderr, discarding the data. schedules the writes to stdin& sequentially, and the reads from stdout and stderr concurrently. is useful to massage errors. is useful to massage errors.1 !"#$%&'()*+,-./01234567# !"#$%&'()*+,-./01234567#*210/.-,+$%&'()"#45! 367! "#$%&'()*210/.-,+34567None  +-24:BHM';See the section Non-lens decoding functions in the documentation for the  pipes-text package. <EException that carries a message and a sample of the leftover data. >A simplified version of ?( for when the error type unifies with >. Note however that this function may still throw exceptions.?bExecutes an external process. The standard streams are piped and consumed in a way defined by the * argument. This function re-throws any s it encounters.MBesides exceptions, if the consumption of the standard streams fails with e3, the whole computation is immediately aborted and e is returned. If an exception or an error e, happen, the external process is terminated.@!Do not pipe any standard stream. APipe stdout.BPipe stderr.CPipe stdout and stderr.DPipe stdout and stderr and consume them combined as . EPipe stdin.FPipe stdin and stdout.GPipe stdin and stderr.HPipe stdin, stdout and stderr.IPipe stdin, stdout and stderr%, consuming the last two combined as .S Builds a "4 out of a computation that does something with a %, but may fail with an error of type e.>Even if the original computation doesn't completely drain the , the constructed " will.T Builds a "$ out of a computation that drains a 0 completely, but may fail with an error of type e.U[Useful in combination with folds from the pipes prelude or more specialized folds like  from  pipes-text and  from pipes-bytestring. V Builds a "# out of a computation that folds a  and drains it completely.X Builds a " out of a pure fold from the foldl package.Y Builds a " out of a monadic fold from the foldl' package that works in the IO monad.Z Builds a " out of a monadic fold from the foldl package.aTurn a  from  pipes-parse into a Sihpon.bTurn a  from  pipes-parse into a Sihpon.c Constructs a "H that aborts the computation with an explicit error if the underlying  produces anything.dLike cE, but throws an exception instead of using the explicit error type.eThrows <C if any data comes out of the underlying producer, and returns  otherwise.fLike e$, but doesn't take an error message.g Constructs a "' that works on encoded values out of a " that works on decoded values. h[Specifies a transformation that will be applied to each line of text, represented as a .iRSpecifies a prefix that will be calculated and appended for each line of text.j Constructs a  value.kA simplified version of l( for when the error type unified with @. Note however that this function may still throw exceptions.l Similar to ?i, but instead of a single process it executes a (possibly branching) pipeline of external processes. This function has a limitation compared to the standard UNIX pipelines. If a downstream process terminates early without error, the upstream processes are not notified and keep going. There is no SIGPIPE-like functionality, in other words. m Builds a .nZApplies a transformation to the stream of bytes flowing into a stage from previous stages.*This function is ignored for first stages.o Converts any  to the left side of an .  builds a 8 for a sum out of the 8s for the branches. builds a 8 for a composite out of the 8s for the parts. carn turn a 8 for bytes into a 8 for text.G89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcde Error messagefgA decoding function.A "9 that determines how to handle decoding leftovers. Pass pure id to ignore leftovers. Pass  unwanted idM to abort the computation with an explicit error if leftovers remain. Pass f to throw a < if leftovers remain.hij&A decoding function for lines of text.A "9 that determines how to handle decoding leftovers. Pass pure id to ignore leftovers. Pass  unwanted idM to abort the computation with an explicit error if leftovers remain. Pass f to throw a < if leftovers remain.kl2Views the pipeline as a single process for which stdin is the stdin of the first stage and stdout is the stdout5 of the leftmost terminal stage closer to the root. stderr is a combination of the stderr* streams of all the stages. The combined stderr" stream always has UTF-8 encoding.uA (possibly branching) pipeline of processes. Each process' stdin is fed with the stdout of its parent in the tree.m0How to handle lines coming from stderr for this . Does the  for this E represent an error? (Some programs return non-standard exit codes.)A process definition.nog{~}"'*89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno@?>*@ABCDEFGHI'JKLMNOP"STUVW[\]^_`abXYZQRc;g89:jhid<=eflkmonC89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnoNone -:BHMqDo stuff with stdout.rDo stuff with stderr.sDo stuff with stdin.tDo stuff with stdout and stderr combined as . uPipe stdin to the created process' stdin.vPipe the created process' stdout to stdout.wPipe the created process' stderr to stderr. pqrstuvwxyzs{~}"$'*89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz $sqrtuvwxpyz pqrstuvwxyzNone -:BHM     !"#$$%&'()**++,--./0123456789:;<==>?@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~process-streaming-0.7.0.1System.Process.StreamingSystem.Process.Lens!System.Process.Streaming.Internal!System.Process.Streaming.Extended Pipes.TexttoLazyM!System.Process.Streaming.Tutorialpipes-text-0.0.0.15Pipes.Text.EncodingdecodeIso8859_1 decodeAscii decodeUtf8_cmdspec _ShellCommand _RawCommand_cwd_envstreams _close_fds _create_group_delegate_ctlchandles nohandleshandlesi handlesio handlesie handlesioe handlesoehandlesohandleseStage_processDefinition _stderrLines_exitCodePolicy_inboundLinesteardown lineTweakerSiphon_ Nonexhaustive ExhaustiveSiphonPiaprunPiapPumprunPumpPipingPPInputOutputError PPInputError PPInputOutputPPInput PPOutputErrorPPErrorPPOutputPPNone exhaustive runSiphon runSiphonDumbcombined manyCombinedSiphonOp getSiphonOpDecodingFunctionLeftoverExceptionexecuteexecuteFalliblynopipingpipeopipeepipeoepipeoecpipeipipeiopipeiepipeioepipeioec fromProducer fromProducerMfromSafeProducerfromFallibleProducer fromFoldablefromEnumerable fromLazyBytes intoLazyBytes intoLazyTextsiphonsiphon'fromFold fromFold' fromFold'_ fromFoldl fromFoldlIO fromFoldlM fromConsumer fromConsumer' fromConsumerMfromConsumerM'fromSafeConsumerfromFallibleConsumer fromParser fromParserMunwanted unwantedX leftoverX _leftoverXencoded tweakLines prefixLinestoLinesexecutePipelineexecutePipelineFalliblystageinboundpipefailtoPipingpiapopiapepiapipiapoesameisameosameesameioepumpFromHandlesiphonToHandleprocess-1.2.0.0System.Process createProcessbaseControl.Applicative ApplicativeSystem.Process.Internals CreateProcessstd_instd_outstd_err CreatePipe$fFunctorLinesGHC.Basefmap$fBifunctorSiphonbifunctors-4.2.1Data.Bifunctorfirst$fApplicativeSiphonpure pipes-4.1.4 Pipes.CoreProducer<*>$fApplicativePiap$fBifunctorPump$fBifunctorPiping nonexhaustive$fFunctorStage$fMonoidSiphon$fBifunctorSiphon_$fApplicativeSiphon_$fBifunctorPiap $fMonoidPump$fApplicativePumpvoid-0.7 Data.VoidVoidGHC.IO.Exception IOException text-1.2.0.4Data.Text.InternalTextpipes-bytestring-2.1.1Pipes.ByteStringpipes-parse-3.0.2 Pipes.ParseParserid ExitFailure Data.EitherEither$fDecidableSiphonOpcontravariant-1.3.1$Data.Functor.Contravariant.Divisiblechoose$fDivisibleSiphonOpdivide$fContravariantSiphonOpData.Functor.Contravariant contramapCreatePipelineexecuteInternalterminateCarefullyterminateOnError separatederrorSiphonUTF8muteExitCodeexecutePipelineInternalblende$fShowLeftoverException$fExceptionLeftoverException rawSystemsystemrunInteractiveProcessrunInteractiveCommand runProcess runCommandinterruptProcessGroupOfterminateProcessgetProcessExitCodewaitForProcessshowCommandForUserreadProcessWithExitCode readProcess callCommand callProcess spawnCommand spawnProcessshellproc ProcessHandle delegate_ctlc create_group close_fdsenvcwdcmdspec ShellCommand RawCommandCmdSpecInherit UseHandle StdStream