process

Modules

channel
module process.channel
type
module process.type

Public Imports

process.channel
public import process.channel;
Undocumented in source.

Members

Classes

MeasureTime
class MeasureTime

Measure the runtime of a process.

PipeProcess
class PipeProcess

Async process that do not block on read from stdin/stderr.

Sandbox
class Sandbox

Moves the process to a separate process group and on exit kill it and all its children.

Timeout
class Timeout

Terminate the process after the timeout. The timeout is checked in the wait/tryWait methods.

Functions

drain
DrainRange drain(Process p)

Drain a process pipe until empty.

drain
Process drain(Process p, T range)

Drain the output from the process into an output range.

drainByLineCopy
auto drainByLineCopy(Process p)
Undocumented in source. Be warned that the author may not have intended to support it.
drainToNull
Process drainToNull(Process p)

Drain the process output until it is done executing.

getDeepChildren
RawPid[] getDeepChildren(int parentPid)
getShallowChildren
RawPid[] getShallowChildren(int parentPid)
Undocumented in source. Be warned that the author may not have intended to support it.
makeScript
string makeScript(string script, string file, uint line)
Undocumented in source. Be warned that the author may not have intended to support it.
measureTime
MeasureTime measureTime(Process p)
Undocumented in source. Be warned that the author may not have intended to support it.
pipeProcess
Process pipeProcess(const(char[])[] args, std.process.Redirect redirect, string[string] env, std.process.Config config, const(char)[] workDir)
Undocumented in source. Be warned that the author may not have intended to support it.
pipeShell
Process pipeShell(const(char)[] command, std.process.Redirect redirect, string[string] env, std.process.Config config, const(char)[] workDir, string shellPath)
Undocumented in source. Be warned that the author may not have intended to support it.
raii
auto raii(T p)

RAII handling of a process instance.

sandbox
Sandbox sandbox(Process p)
Undocumented in source. Be warned that the author may not have intended to support it.
timeout
Timeout timeout(Process p, Duration timeout)
Undocumented in source. Be warned that the author may not have intended to support it.
waitForPendingData
void waitForPendingData(Process p)

Returns when the process has pending data.

Interfaces

Process
interface Process

Structs

DrainByLineCopyRange
struct DrainByLineCopyRange

Read the data from a ReadChannel by line.

DrainElement
struct DrainElement
Undocumented in source.
DrainRange
struct DrainRange

A range that drains a process stdout/stderr until it terminates.

Raii
struct Raii(T)
Undocumented in source.
RawPid
struct RawPid
Undocumented in source.

Meta

License

MPL-2

Authors

Joakim Brännström (joakim.brannstrom@gmx.com)

This Source Code Form is subject to the terms of the Mozilla Public License, v.2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.