aboutsummaryrefslogtreecommitdiff
path: root/xtask/src/command.rs
diff options
context:
space:
mode:
Diffstat (limited to 'xtask/src/command.rs')
-rw-r--r--xtask/src/command.rs19
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,