[−][src]Struct rustwide::BuildDirectory
Directory in the Workspace
where builds can be executed.
The build directory contains the source code of the crate being built and the target directory used by cargo to store build artifacts. If multiple builds are executed in the same build directory they will share the target directory.
Methods
impl BuildDirectory
[src]
pub fn build<R, F: FnOnce(&Build) -> Result<R, Error>>(
&mut self,
toolchain: &Toolchain,
krate: &Crate,
sandbox: SandboxBuilder,
f: F
) -> Result<R, Error>
[src]
&mut self,
toolchain: &Toolchain,
krate: &Crate,
sandbox: SandboxBuilder,
f: F
) -> Result<R, Error>
Run a sandboxed build of the provided crate with the provided toolchain. The closure will
be provided an instance of Build
that allows spawning new processes
inside the sandbox.
All the state will be kept on disk as long as the closure doesn't exit: after that things might be removed.
Example
let mut build_dir = workspace.build_dir("foo"); build_dir.build(&toolchain, &krate, sandbox, |build| { build.cargo().args(&["test", "--all"]).run()?; Ok(()) })?;
pub fn purge(&mut self) -> Result<(), Error>
[src]
Remove all the contents of the build directory, freeing disk space.
Auto Trait Implementations
impl Send for BuildDirectory
impl Unpin for BuildDirectory
impl Sync for BuildDirectory
impl !UnwindSafe for BuildDirectory
impl !RefUnwindSafe for BuildDirectory
Blanket Implementations
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Erased for T
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,
fn vzip(self) -> V
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
U: TryFrom<T>,