flix

0.61.0

Process

eff ProcessSource

An effect used to start a process outside the JVM.

All operations on this effect are infallible. If an operation fails the handler must deal with it.

Operations

def execWithCwdAndEnv(cmd: String, args: List[String], cwd: Option[String], env: Map[String, String]): ProcessHandle \ Process Source

Immediately executes the command cmd with the arguments args, by the path cwd and with the environmental env.

def exitValue(ph: ProcessHandle): Option[Int32] \ Process Source

Returns the exit value of the process.

def isAlive(ph: ProcessHandle): Bool \ Process Source

Returns status of the process, if it alive or not.

def pid(ph: ProcessHandle): Int64 \ Process Source

Returns the PID of the process.

def stderr(ph: ProcessHandle): StdErr \ Process Source

Returns stderr OutputStream of the process.

def stdin(ph: ProcessHandle): StdIn \ Process Source

Returns stdin InputStream of the process.

def stdout(ph: ProcessHandle): StdOut \ Process Source

Returns stdout OutputStream of the process.

def stop(ph: ProcessHandle): Unit \ Process Source

Stops the process.

def waitFor(ph: ProcessHandle): Int32 \ Process Source

Waits for process to finish.

def waitForTimeout(ph: ProcessHandle, time: Int64, tUnit: TimeUnit): Bool \ Process Source

Waits a specified amount of time for the process to finish

Definitions

def exec(cmd: String, args: List[String]): ProcessHandle \ Process Source

Executes the command cmd with the arguments args.

def execWithCwd(cmd: String, args: List[String], cwd: Option[String]): ProcessHandle \ Process Source

Executes the command cmd with the arguments args, by the path cwd.

def execWithEnv(cmd: String, args: List[String], env: Map[String, String]): ProcessHandle \ Process Source

Executes the command cmd with the arguments args and with the environmental env.

def handle(f: a -> b \ ef): a -> Result[IoError, b] \ (ef - Process) + Exec + IO Source

Handles the Process effect of the given function f.

In other words, re-interprets the Process effect using the Exec effect.

def runWithIO(f: Unit -> a \ ef): Result[IoError, a] \ (ef - Process) + Exec + IO Source

Runs the Process effect of the given function f.

In other words, re-interprets the Process effect using the Exec effect.