Struct DownloadContext

Source
pub(crate) struct DownloadContext<'a> {
    pub path_modification_cache: Arc<Mutex<HashMap<Vec<&'static str>, PathFreshness>>>,
    pub src: &'a Path,
    pub submodules: &'a Option<bool>,
    pub host_target: TargetSelection,
    pub patch_binaries_for_nix: Option<bool>,
    pub exec_ctx: &'a ExecutionContext,
    pub stage0_metadata: &'a Stage0,
    pub llvm_assertions: bool,
    pub bootstrap_cache_path: &'a Option<PathBuf>,
    pub is_running_on_ci: bool,
}
Expand description

Only should be used for pre config initialization downloads.

Fields§

§path_modification_cache: Arc<Mutex<HashMap<Vec<&'static str>, PathFreshness>>>§src: &'a Path§submodules: &'a Option<bool>§host_target: TargetSelection§patch_binaries_for_nix: Option<bool>§exec_ctx: &'a ExecutionContext§stage0_metadata: &'a Stage0§llvm_assertions: bool§bootstrap_cache_path: &'a Option<PathBuf>§is_running_on_ci: bool

Trait Implementations§

Source§

impl<'a> AsRef<DownloadContext<'a>> for DownloadContext<'a>

Source§

fn as_ref(&self) -> &DownloadContext<'a>

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl<'a> From<&'a Config> for DownloadContext<'a>

Source§

fn from(value: &'a Config) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<'a> Freeze for DownloadContext<'a>

§

impl<'a> RefUnwindSafe for DownloadContext<'a>

§

impl<'a> Send for DownloadContext<'a>

§

impl<'a> Sync for DownloadContext<'a>

§

impl<'a> Unpin for DownloadContext<'a>

§

impl<'a> UnwindSafe for DownloadContext<'a>

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> 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.

§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

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

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 96 bytes