diff options
Diffstat (limited to 'xtask/src/command.rs')
| -rw-r--r-- | xtask/src/command.rs | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/xtask/src/command.rs b/xtask/src/command.rs index b1f885c..6fce1c9 100644 --- a/xtask/src/command.rs +++ b/xtask/src/command.rs @@ -66,6 +66,10 @@ pub enum CargoCommand<'a> { package: Vec<String>, check_only: bool, }, + Doc { + cargoarg: &'a Option<&'a str>, + features: Option<&'a str>, + }, ExampleSize { cargoarg: &'a Option<&'a str>, example: &'a str, @@ -85,9 +89,9 @@ impl<'a> CargoCommand<'a> { CargoCommand::ExampleSize { .. } => "size", CargoCommand::Clippy { .. } => "clippy", CargoCommand::Format { .. } => "fmt", + CargoCommand::Doc { .. } => "doc", // TODO // CargoCommand::Test { .. } => "test", - // CargoCommand::Doc { .. } => "doc", } } @@ -208,6 +212,19 @@ impl<'a> CargoCommand<'a> { } args } + CargoCommand::Doc { cargoarg, features } => { + let mut args = vec!["+nightly"]; + if let Some(cargoarg) = cargoarg { + args.extend_from_slice(&[cargoarg]); + } + + args.extend_from_slice(&[self.name()]); + + if let Some(feature) = features { + args.extend_from_slice(&["--features", feature]); + } + args + } CargoCommand::Format { cargoarg, package, |
