pub struct PackageId { /* private fields */ }
Expand description
Identifier for a specific version of a package in a specific source.
Implementations
sourceimpl PackageId
impl PackageId
pub fn new<T: ToSemver>(
name: impl Into<InternedString>,
version: T,
sid: SourceId
) -> CargoResult<PackageId>
pub fn pure(
name: InternedString,
version: Version,
source_id: SourceId
) -> PackageId
pub fn name(self) -> InternedString
pub fn version(self) -> &'static Version
pub fn source_id(self) -> SourceId
pub fn with_precise(self, precise: Option<String>) -> PackageId
pub fn with_source_id(self, source: SourceId) -> PackageId
pub fn map_source(self, to_replace: SourceId, replace_with: SourceId) -> Self
sourcepub fn stable_hash(self, workspace: &Path) -> PackageIdStableHash<'_>
pub fn stable_hash(self, workspace: &Path) -> PackageIdStableHash<'_>
Returns a value that implements a “stable” hashable value.
Stable hashing removes the path prefix of the workspace from path packages. This helps with reproducible builds, since this hash is part of the symbol metadata, and we don’t want the absolute path where the build is performed to affect the binary output.
sourceimpl PackageId
impl PackageId
pub fn as_activations_key(
self
) -> (InternedString, SourceId, SemverCompatibility)
Trait Implementations
sourceimpl<'de> Deserialize<'de> for PackageId
impl<'de> Deserialize<'de> for PackageId
sourcefn deserialize<D>(d: D) -> Result<PackageId, D::Error> where
D: Deserializer<'de>,
fn deserialize<D>(d: D) -> Result<PackageId, D::Error> where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl Ord for PackageId
impl Ord for PackageId
sourceimpl PartialOrd<PackageId> for PackageId
impl PartialOrd<PackageId> for PackageId
sourcefn partial_cmp(&self, other: &PackageId) -> Option<Ordering>
fn partial_cmp(&self, other: &PackageId) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Copy for PackageId
impl Eq for PackageId
impl StructuralEq for PackageId
Auto Trait Implementations
impl RefUnwindSafe for PackageId
impl Send for PackageId
impl Sync for PackageId
impl Unpin for PackageId
impl UnwindSafe for PackageId
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.