Struct cargo::core::compiler::fingerprint::DepFingerprint
source · struct DepFingerprint {
pkg_id: u64,
name: InternedString,
public: bool,
only_requires_rmeta: bool,
fingerprint: Arc<Fingerprint>,
}
Expand description
Dependency edge information for fingerprints. This is generated for each
dependency and is stored in a Fingerprint
.
Fields§
§pkg_id: u64
The hash of the package id that this dependency points to
name: InternedString
The crate name we’re using for this dependency, which if we change we’ll need to recompile!
public: bool
Whether or not this dependency is flagged as a public dependency or not.
only_requires_rmeta: bool
Whether or not this dependency is an rmeta dependency or a “full” dependency. In the case of an rmeta dependency our dependency edge only actually requires the rmeta from what we depend on, so when checking mtime information all files other than the rmeta can be ignored.
fingerprint: Arc<Fingerprint>
The dependency’s fingerprint we recursively point to, containing all the other hash information we’d otherwise need.
Implementations§
source§impl DepFingerprint
impl DepFingerprint
fn new( cx: &mut Context<'_, '_>, parent: &Unit, dep: &UnitDep ) -> CargoResult<DepFingerprint>
Trait Implementations§
source§impl Clone for DepFingerprint
impl Clone for DepFingerprint
source§fn clone(&self) -> DepFingerprint
fn clone(&self) -> DepFingerprint
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl<'de> Deserialize<'de> for DepFingerprint
impl<'de> Deserialize<'de> for DepFingerprint
source§fn deserialize<D>(d: D) -> Result<DepFingerprint, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(d: D) -> Result<DepFingerprint, D::Error>where D: Deserializer<'de>,
Auto Trait Implementations§
impl RefUnwindSafe for DepFingerprint
impl Send for DepFingerprint
impl Sync for DepFingerprint
impl Unpin for DepFingerprint
impl UnwindSafe for DepFingerprint
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
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: 40 bytes