Struct cargo::core::package_id::PackageId
source · pub struct PackageId { /* private fields */ }
Expand description
Identifier for a specific version of a package in a specific source.
Implementations§
source§impl 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.
source§impl PackageId
impl PackageId
pub fn as_activations_key( self ) -> (InternedString, SourceId, SemverCompatibility)
Trait Implementations§
source§impl<'de> Deserialize<'de> for PackageId
impl<'de> Deserialize<'de> for PackageId
source§fn 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
source§impl Ord for PackageId
impl Ord for PackageId
source§impl PartialEq<PackageId> for PackageId
impl PartialEq<PackageId> for PackageId
source§impl PartialOrd<PackageId> for PackageId
impl PartialOrd<PackageId> for PackageId
1.0.0 · source§fn 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 moreimpl 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§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.