pub struct Confined { /* private fields */ }Expand description
The arm in use, the copy kept for the next command, and the copies commands still hold.
The copy of a command that settled is kept for the next command, which syncs it rather than making another (runtime D10). A command handed to the backlog keeps its copy until the member reports its ending, because the process is still in it.
Implementations§
Source§impl Confined
impl Confined
Sourcepub fn with_arm(arm: Confinement, scratch: Option<PathBuf>) -> Confined
pub fn with_arm(arm: Confinement, scratch: Option<PathBuf>) -> Confined
An arm stated rather than found: a test’s machine, or a report about one.
pub fn arm(&self) -> &Confinement
Sourcepub fn statement(&self) -> String
pub fn statement(&self) -> String
What this arm promises and does not, for the caller’s own description of itself.
Sourcepub fn place(
&mut self,
command: Command,
workdir: &Path,
) -> Result<(Command, Placed), AxError>
pub fn place( &mut self, command: Command, workdir: &Path, ) -> Result<(Command, Placed), AxError>
Places one command under this machine’s arm: the tool’s copy of
workdir, synced to it, for the command to run in, wrapped in the
platform’s isolation where the arm is one that has a wrapper.
§Errors
E_SANDBOX_DENIED when this machine has no arm, when the arm
cannot be given by any build of this crate, or when the working
tree is too large or too deep to copy.
Sourcepub fn settled(&mut self, placed: Placed)
pub fn settled(&mut self, placed: Placed)
The wait ended and the command is over: its copy is kept for the next command, or goes when one is kept already.