Struct cargo::core::package_id::PackageId
source · pub struct PackageId {
inner: &'static PackageIdInner,
}
Expand description
Identifier for a specific version of a package in a specific source.
Fields§
§inner: &'static PackageIdInner
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.
sourcepub fn tarball_name(&self) -> String
pub fn tarball_name(&self) -> String
Filename of the .crate
tarball, e.g., once_cell-1.18.0.crate
.
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
§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.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> Serialize for Twhere
T: Serialize + ?Sized,
impl<T> Serialize for Twhere T: Serialize + ?Sized,
fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>
source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,
source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<T> DeserializeOwned for Twhere T: for<'de> Deserialize<'de>,
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: 8 bytes