process.lua | Extending Qt Creator Manual
Description: Run external processes.

- Extending Qt Creator Manual
- process.lua
- Extending Qt Creator Manual 15.0.0

# process.lua

     ---@meta Process

     local process = {}

     ---@async
     ---Runs a command in a terminal, has to be called from a coroutine!
     ---@param cmd string The command to run.
     ---@return number exitCode The exit code of the command.
     function process.runInTerminal(cmd) end

     ---@async
     ---Runs a command and returns the output!
     ---@param cmd string The command to run.
     ---@return string output The output of the command.
     function process.commandOutput(cmd) end

     ---@class Process
     process.Process = {}

     ---@class ProcessParameters
     ---@field command FilePath The command to run.
     ---@field arguments? string[] The arguments to pass to the command.
     ---@field workingDirectory? FilePath The working directory for the command.
     ---@field stdin? string The input to write to stdin.
     ---@field stdout? function The callback to call when the process writes to stdout.
     ---@field stderr? function The callback to call when the process writes to stderr.
     ---@field onFinished? function () The callback to call when the process finishes.
     process.ProcessParameters = {}

     ---Creates a new process object.
     ---@param parameters ProcessParameters
     ---@return Process
     function process.create(parameters) end

     ---Start the process.
     ---@async
     ---@return boolean isRunning Whether the process was started successfully.
     function process.Process:start() end

     ---Stop the process.
     ---@async
     ---@return boolean didStop Whether the process was stopped successfully.
     ---@return number exitCode The exit code of the process.
     ---@return string error The error message if the process could not be stopped.
     function process.Process:stop() end

     ---Returns whether the process is running.
     ---@return boolean isRunning Whether the process is running.
     function process.Process:isRunning() end

     ---
     return process