Enum bootstrap::Subcommand

source ·
pub enum Subcommand {
Show 17 variants Build, Check { all_targets: bool, }, Clippy { fix: bool, allow_dirty: bool, allow_staged: bool, allow: Vec<String>, deny: Vec<String>, warn: Vec<String>, forbid: Vec<String>, }, Fix, Format { check: bool, all: bool, }, Doc { open: bool, json: bool, }, Test {
Show 13 fields no_fail_fast: bool, test_args: Vec<String>, compiletest_rustc_args: Vec<String>, no_doc: bool, doc: bool, bless: bool, extra_checks: Option<String>, force_rerun: bool, only_modified: bool, compare_mode: Option<String>, pass: Option<String>, run: Option<String>, rustfix_coverage: bool,
}, Miri { no_fail_fast: bool, test_args: Vec<String>, no_doc: bool, doc: bool, }, Bench { test_args: Vec<String>, }, Clean { all: bool, stage: Option<u32>, }, Dist, Install, Run { args: Vec<String>, }, Setup { profile: Option<PathBuf>, }, Suggest { run: bool, }, Vendor { sync: Vec<PathBuf>, versioned_dirs: bool, }, Perf {},
}

Variants§

§

Build

Compile either the compiler or libraries

§

Check

Compile either the compiler or libraries, using cargo check

Fields

§all_targets: bool

Check all targets

§

Clippy

Run Clippy (uses rustup/cargo-installed clippy binary)

Fields

§fix: bool
§allow_dirty: bool
§allow_staged: bool
§allow: Vec<String>

clippy lints to allow

§deny: Vec<String>

clippy lints to deny

§warn: Vec<String>

clippy lints to warn on

§forbid: Vec<String>

clippy lints to forbid

§

Fix

Run cargo fix

§

Format

Run rustfmt

Fields

§check: bool

check formatting instead of applying

§all: bool

apply to all appropriate files, not just those that have been modified

§

Doc

Build documentation

Fields

§open: bool

open the docs in a browser

§json: bool

render the documentation in JSON format in addition to the usual HTML format

§

Test

Build and run some test suites

Fields

§no_fail_fast: bool

run all tests regardless of failure

§test_args: Vec<String>

extra arguments to be passed for the test tool being used (e.g. libtest, compiletest or rustdoc)

§compiletest_rustc_args: Vec<String>

extra options to pass the compiler when running compiletest tests

§no_doc: bool

do not run doc tests

§doc: bool

only run doc tests

§bless: bool

whether to automatically update stderr/stdout files

§extra_checks: Option<String>

comma-separated list of other files types to check (accepts py, py:lint, py:fmt, shell)

§force_rerun: bool

rerun tests even if the inputs are unchanged

§only_modified: bool

only run tests that result has been changed

§compare_mode: Option<String>

mode describing what file the actual ui output will be compared to

§pass: Option<String>

force {check,build,run}-pass tests to this mode.

§run: Option<String>

whether to execute run-* tests

§rustfix_coverage: bool

enable this to generate a Rustfix coverage file, which is saved in /<build_base>/rustfix_missing_coverage.txt

§

Miri

Build and run some test suites in Miri

Fields

§no_fail_fast: bool

run all tests regardless of failure

§test_args: Vec<String>

extra arguments to be passed for the test tool being used (e.g. libtest, compiletest or rustdoc)

§no_doc: bool

do not run doc tests

§doc: bool

only run doc tests

§

Bench

Build and run some benchmarks

Fields

§test_args: Vec<String>
§

Clean

Clean out build directories

Fields

§all: bool

Clean the entire build directory (not used by default)

§stage: Option<u32>

Clean a specific stage without touching other artifacts. By default, every stage is cleaned if this option is not used.

§

Dist

Build distribution artifacts

§

Install

Install distribution artifacts

§

Run

Run tools contained in this repository

Fields

§args: Vec<String>

arguments for the tool

§

Setup

Set up the environment for development

Fields

§profile: Option<PathBuf>

Either the profile for config.toml or another setup action. May be omitted to set up interactively

§

Suggest

Suggest a subset of tests to run, based on modified files

Fields

§run: bool

run suggested tests

§

Vendor

Vendor dependencies

Fields

§sync: Vec<PathBuf>

Additional Cargo.toml to sync and vendor

§versioned_dirs: bool

Always include version in subdir name

§

Perf

Perform profiling and benchmarking of the compiler using the rustc-perf-wrapper tool.

You need to pass arguments after --, e.g.x perf -- cachegrind.

Implementations§

source§

impl Subcommand

source

pub fn kind(&self) -> Kind

source

pub fn compiletest_rustc_args(&self) -> Vec<&str>

source

pub fn fail_fast(&self) -> bool

source

pub fn doc_tests(&self) -> DocTests

source

pub fn bless(&self) -> bool

source

pub fn extra_checks(&self) -> Option<&str>

source

pub fn only_modified(&self) -> bool

source

pub fn force_rerun(&self) -> bool

source

pub fn rustfix_coverage(&self) -> bool

source

pub fn compare_mode(&self) -> Option<&str>

source

pub fn pass(&self) -> Option<&str>

source

pub fn run(&self) -> Option<&str>

source

pub fn open(&self) -> bool

source

pub fn json(&self) -> bool

source

pub fn vendor_versioned_dirs(&self) -> bool

source

pub fn vendor_sync_args(&self) -> Vec<PathBuf>

Trait Implementations§

source§

impl Clone for Subcommand

source§

fn clone(&self) -> Subcommand

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Subcommand

source§

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

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

impl Default for Subcommand

source§

fn default() -> Subcommand

Returns the “default value” for a type. Read more
source§

impl FromArgMatches for Subcommand

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

impl Subcommand for Subcommand

source§

fn augment_subcommands<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

fn has_subcommand(__clap_name: &str) -> bool

Test whether Self can parse a specific subcommand

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where 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.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

source§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

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 T
where U: TryFrom<T>,

source§

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.

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

Size for each variant:

  • Build: 0 bytes
  • Check: 1 byte
  • Clippy: 136 bytes
  • Fix: 0 bytes
  • Format: 2 bytes
  • Doc: 2 bytes
  • Test: 152 bytes
  • Miri: 64 bytes
  • Bench: 24 bytes
  • Clean: 12 bytes
  • Dist: 0 bytes
  • Install: 0 bytes
  • Run: 24 bytes
  • Setup: 24 bytes
  • Suggest: 1 byte
  • Vendor: 64 bytes
  • Perf: 0 bytes