Module cargo::core::resolver::context

source ·

Re-exports

pub use super::encode::Metadata;
pub use super::encode::EncodableDependency;
pub use super::encode::EncodablePackageId;
pub use super::encode::EncodableResolve;
pub use super::resolve::Resolve;

Structs

Enums

A type that represents when cargo treats two Versions as compatible. Versions a and b are compatible if their left-most nonzero digit is the same.

Type Definitions

Find the activated version of a crate based on the name, source, and semver compatibility. By storing this in a hash map we ensure that there is only one semver compatible version of each crate. This all so stores the ContextAge.
When backtracking it can be useful to know how far back to go. The ContextAge of a Context is a monotonically increasing counter of the number of decisions made to get to this state. Several structures store the ContextAge when it was added, to be used in find_candidate for backtracking.