Skip to main content

BuildInputs

Struct BuildInputs 

Source
pub struct BuildInputs { /* private fields */ }
Expand description

An owned, byte-exact revision. Rust sources remain text for function admission; every other input is encoded so binary assets are covered without lossy decoding.

Implementations§

Source§

impl BuildInputs

Source

pub fn capture( root: &Path, excluded_directories: &[PathBuf], context: BTreeMap<String, String>, ) -> Result<Self>

Read all regular files recursively. Exclusions are explicit root-relative directories, normally .git and the build output directory. Never exclude a dependency or compiler input. Symlinks are rejected instead of silently overlooking external inputs or making the staged build resolve differently. Two identical reads reject ordinary edits during capture; the staged bytes, rather than the mutable source directory, must be used for compilation.

Source

pub fn snapshot(&self) -> Result<SourceSnapshot>

Exact comparison inputs for PatchSupervisor. Context keys live outside the filesystem namespace and must include toolchain identity and relevant env.

Source

pub fn stage(&self) -> Result<StagedInputs>

Create an isolated source tree from the captured bytes, never by rereading live sources. Keep this object alive for the entire build and verification.

Trait Implementations§

Source§

impl Clone for BuildInputs

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for BuildInputs

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for BuildInputs

Source§

impl PartialEq for BuildInputs

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for BuildInputs

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.