pub(crate) struct CrateHeader {
    pub(crate) triple: TargetTriple,
    pub(crate) hash: Svh,
    pub(crate) name: Symbol,
    pub(crate) is_proc_macro_crate: bool,
}
Expand description

Serialized crate metadata.

This contains just enough information to determine if we should load the CrateRoot or not. Prefer CrateRoot whenever possible to avoid ICEs when using omit-git-hash locally. See #76720 for more details.

If you do modify this struct, also bump the METADATA_VERSION constant.

Fields§

§triple: TargetTriple§hash: Svh§name: Symbol§is_proc_macro_crate: bool

Whether this is the header for a proc-macro crate.

This is separate from ProcMacroData to avoid having to update METADATA_VERSION every time ProcMacroData changes.

Trait Implementations§

source§

impl<'tcx, '__a> Decodable<DecodeContext<'__a, 'tcx>> for CrateHeader

source§

fn decode(__decoder: &mut DecodeContext<'__a, 'tcx>) -> Self

source§

impl<'tcx, '__a> Encodable<EncodeContext<'__a, 'tcx>> for CrateHeader

source§

fn encode(&self, __encoder: &mut EncodeContext<'__a, 'tcx>)

source§

impl ParameterizedOverTcx for CrateHeader

§

type Value<'tcx> = CrateHeader

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere 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 Twhere 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, U> TryFrom<U> for Twhere U: Into<T>,

§

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 Twhere U: TryFrom<T>,

§

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.

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: 96 bytes