Expand description

Graph analysis for individual features within a package.

FeatureGraph can be used to do a more precise analysis than is possible at the package level. For example, an optional feature not included a default build can potentially pull in a large number of extra dependencies. This module allows for those subgraphs to be filtered out.

Re-exports

pub use feature_list::FeatureList;

Modules

A sorted, deduplicated list of features from a single package.

Structs

A feature dependency that is conditionally activated.

Contains information about dependency cycles in feature graphs.

A FeatureFilter which calls the function that’s passed in.

A derived graph representing every feature of every package.

An identifier for a (package, feature) pair in a feature graph.

Metadata for a feature within a package.

A query over a feature graph.

A set of resolved feature IDs in a feature graph.

Enums

The kind of a particular feature within a package.

A unique identifier for a feature within a specific package. Forms part of a FeatureId.

Describes one of the standard sets of features recognized by Cargo: none, all or default.

Traits

Trait representing whether a feature within a package should be selected.

Represents whether a particular link within a feature graph should be followed during a resolve operation.

Functions

Returns a FeatureFilter that selects everything from the base filter, plus some additional feature IDs.

Returns a FeatureFilter that selects everything from the base filter, plus these additional feature names – regardless of what package they are in.