]> git.proxmox.com Git - rustc.git/blobdiff - vendor/mdbook/src/cmd/clean.rs
New upstream version 1.68.2+dfsg1
[rustc.git] / vendor / mdbook / src / cmd / clean.rs
index 0569726e1b9a7e0eb847484f120f5c93bf958b1e..3ec605fea41a1b03a1a9e2d2b5b053d2af72d6e7 100644 (file)
@@ -1,28 +1,16 @@
+use super::command_prelude::*;
 use crate::get_book_dir;
 use anyhow::Context;
-use clap::{arg, App, Arg, ArgMatches};
 use mdbook::MDBook;
 use std::fs;
+use std::path::PathBuf;
 
 // Create clap subcommand arguments
-pub fn make_subcommand<'help>() -> App<'help> {
-    App::new("clean")
+pub fn make_subcommand() -> Command {
+    Command::new("clean")
         .about("Deletes a built book")
-        .arg(
-            Arg::new("dest-dir")
-                .short('d')
-                .long("dest-dir")
-                .value_name("dest-dir")
-                .help(
-                    "Output directory for the book{n}\
-                    Relative paths are interpreted relative to the book's root directory.{n}\
-                    If omitted, mdBook uses build.build-dir from book.toml or defaults to `./book`.",
-                ),
-        )
-        .arg(arg!([dir]
-            "Root directory for the book{n}\
-            (Defaults to the Current Directory when omitted)"
-        ))
+        .arg_dest_dir()
+        .arg_root_dir()
 }
 
 // Clean command implementation
@@ -30,7 +18,7 @@ pub fn execute(args: &ArgMatches) -> mdbook::errors::Result<()> {
     let book_dir = get_book_dir(args);
     let book = MDBook::load(&book_dir)?;
 
-    let dir_to_remove = match args.value_of("dest-dir") {
+    let dir_to_remove = match args.get_one::<PathBuf>("dest-dir") {
         Some(dest_dir) => dest_dir.into(),
         None => book.root.join(&book.config.build.build_dir),
     };