struct InstallInfo {
    version_req: Option<String>,
    bins: BTreeSet<String>,
    features: BTreeSet<String>,
    all_features: bool,
    no_default_features: bool,
    profile: String,
    target: Option<String>,
    rustc: Option<String>,
    other: BTreeMap<String, Value>,
}
Expand description

Tracking information for the installation of a single package.

This tracks the settings that were used when the package was installed. Future attempts to install the same package will check these settings to determine if it needs to be rebuilt/reinstalled. If nothing has changed, then Cargo will inform the user that it is “up to date”.

This is only used for the v2 format.

Fields§

§version_req: Option<String>

Version requested via --version. None if --version not specified. Currently not used, possibly may be used in the future.

§bins: BTreeSet<String>

Set of binary names installed.

§features: BTreeSet<String>

Set of features explicitly enabled.

§all_features: bool§no_default_features: bool§profile: String

Either “debug” or “release”.

§target: Option<String>

The installation target. Either the host or the value specified in --target. None if unknown (when loading from v1).

§rustc: Option<String>

Output of rustc -V. None if unknown (when loading from v1). Currently not used, possibly may be used in the future.

§other: BTreeMap<String, Value>

Forwards compatibility.

Implementations§

source§

impl InstallInfo

source

fn from_v1(set: &BTreeSet<String>) -> InstallInfo

source

fn is_up_to_date( &self, opts: &CompileOptions, target: &str, exes: &BTreeSet<String> ) -> bool

Determine if this installation is “up to date”, or if it needs to be reinstalled.

This does not do Package/Source/Version checking.

Trait Implementations§

source§

impl Debug for InstallInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for InstallInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for InstallInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

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> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> Serialize for Twhere T: Serialize + ?Sized,

source§

fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>

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.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

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