Enum cargo::ops::CompileFilter
source · pub enum CompileFilter {
Default {
required_features_filterable: bool,
},
Only {
all_targets: bool,
lib: LibRule,
bins: FilterRule,
examples: FilterRule,
tests: FilterRule,
benches: FilterRule,
},
}
Expand description
Filter to apply to the root package to select which Cargo targets will be built. (examples, bins, benches, tests, …)
The actual filter process happens inside generate_root_units
.
Not to be confused with Packages
, which opts in packages to be built.
Variants§
Default
Fields
The default set of Cargo targets.
Only
Only includes a subset of all Cargo targets.
Implementations§
source§impl CompileFilter
impl CompileFilter
sourcepub fn from_raw_arguments(
lib_only: bool,
bins: Vec<String>,
all_bins: bool,
tsts: Vec<String>,
all_tsts: bool,
exms: Vec<String>,
all_exms: bool,
bens: Vec<String>,
all_bens: bool,
all_targets: bool
) -> CompileFilter
pub fn from_raw_arguments( lib_only: bool, bins: Vec<String>, all_bins: bool, tsts: Vec<String>, all_tsts: bool, exms: Vec<String>, all_exms: bool, bens: Vec<String>, all_bens: bool, all_targets: bool ) -> CompileFilter
Constructs a filter from raw command line arguments.
sourcepub fn new(
rule_lib: LibRule,
rule_bins: FilterRule,
rule_tsts: FilterRule,
rule_exms: FilterRule,
rule_bens: FilterRule
) -> CompileFilter
pub fn new( rule_lib: LibRule, rule_bins: FilterRule, rule_tsts: FilterRule, rule_exms: FilterRule, rule_bens: FilterRule ) -> CompileFilter
Constructs a filter from underlying primitives.
sourcepub fn new_all_targets() -> CompileFilter
pub fn new_all_targets() -> CompileFilter
Constructs a filter that includes all targets.
sourcepub fn all_test_targets() -> Self
pub fn all_test_targets() -> Self
Constructs a filter that includes all test targets.
Being different from the behavior of CompileFilter::Default
, this
function only recognizes test targets, which means cargo might compile
all targets with tested
flag on, whereas CompileFilter::Default
may include additional example targets to ensure they can be compiled.
Note that the actual behavior is subject to filter_default_targets
and generate_root_units
though.
sourcepub fn single_bin(bin: String) -> Self
pub fn single_bin(bin: String) -> Self
Constructs a filter that includes the given binary. No more. No less.
sourcepub fn need_dev_deps(&self, mode: CompileMode) -> bool
pub fn need_dev_deps(&self, mode: CompileMode) -> bool
Indicates if Cargo needs to build any dev dependency.
sourcepub fn target_run(&self, target: &Target) -> bool
pub fn target_run(&self, target: &Target) -> bool
Selects targets for “cargo run”. for logic to select targets for other
subcommands, see generate_root_units
and filter_default_targets
.
pub fn is_specific(&self) -> bool
pub fn is_all_targets(&self) -> bool
Trait Implementations§
source§impl Clone for CompileFilter
impl Clone for CompileFilter
source§fn clone(&self) -> CompileFilter
fn clone(&self) -> CompileFilter
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more