
This PR forks a new version of the `zed_extension_api` in preparation for new changes. Release Notes: - N/A
29 lines
917 B
Text
29 lines
917 B
Text
interface process {
|
|
use common.{env-vars};
|
|
|
|
/// A command.
|
|
record command {
|
|
/// The command to execute.
|
|
command: string,
|
|
/// The arguments to pass to the command.
|
|
args: list<string>,
|
|
/// The environment variables to set for the command.
|
|
env: env-vars,
|
|
}
|
|
|
|
/// The output of a finished process.
|
|
record output {
|
|
/// The status (exit code) of the process.
|
|
///
|
|
/// On Unix, this will be `None` if the process was terminated by a signal.
|
|
status: option<s32>,
|
|
/// The data that the process wrote to stdout.
|
|
stdout: list<u8>,
|
|
/// The data that the process wrote to stderr.
|
|
stderr: list<u8>,
|
|
}
|
|
|
|
/// Executes the given command as a child process, waiting for it to finish
|
|
/// and collecting all of its output.
|
|
run-command: func(command: command) -> result<output, string>;
|
|
}
|