Module guppy::graph::feature

source ·
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.