Skip to main content

PackageSet

Struct PackageSet 

Source
pub struct PackageSet<'cfg> { /* private fields */ }
Expand description

A set of packages, with the intent to download.

This is primarily used to convert a set of PackageIds to Packages. It will download as needed, or used the cached download if available.

Implementations§

Source§

impl<'cfg> PackageSet<'cfg>

Source

pub fn new( package_ids: &[PackageId], sources: SourceMap<'cfg>, config: &'cfg Config, ) -> CargoResult<PackageSet<'cfg>>

Source

pub fn package_ids<'a>(&'a self) -> impl Iterator<Item = PackageId> + 'a

Source

pub fn enable_download<'a>(&'a self) -> CargoResult<Downloads<'a, 'cfg>>

Source

pub fn get_one(&self, id: PackageId) -> CargoResult<&Package>

Source

pub fn get_many( &self, ids: impl IntoIterator<Item = PackageId>, ) -> CargoResult<Vec<&Package>>

Source

pub fn download_accessible( &self, resolve: &Resolve, root_ids: &[PackageId], has_dev_units: HasDevUnits, requested_kind: CompileKind, target_data: &RustcTargetData, ) -> CargoResult<()>

Downloads any packages accessible from the give root ids.

Source

pub fn sources(&self) -> Ref<'_, SourceMap<'cfg>>

Source

pub fn sources_mut(&self) -> RefMut<'_, SourceMap<'cfg>>

Source

pub fn add_set(&mut self, set: PackageSet<'cfg>)

Merge the given set into self.

Source

pub fn lookup_mut(&mut self, id: PackageId) -> Option<&mut Package>

Get mutable access to an already downloaded package, if it’s already downoaded and it’s part of this set. Does not actually attempt to download anything if it’s not already downloaded.

Auto Trait Implementations§

§

impl<'cfg> !Freeze for PackageSet<'cfg>

§

impl<'cfg> !RefUnwindSafe for PackageSet<'cfg>

§

impl<'cfg> !Send for PackageSet<'cfg>

§

impl<'cfg> !Sync for PackageSet<'cfg>

§

impl<'cfg> Unpin for PackageSet<'cfg>

§

impl<'cfg> UnsafeUnpin for PackageSet<'cfg>

§

impl<'cfg> !UnwindSafe for PackageSet<'cfg>

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.

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

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

Initializes a with the given initializer. Read more
Source§

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

Dereferences the given pointer. Read more
Source§

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

Mutably dereferences the given pointer. Read more
Source§

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.