xtask/cli/
r_cmd_check.rs
1use clap::{Args, ValueEnum};
2
3use crate::commands::r_cmd_check::RCmdCheckErrorOn;
4
5#[derive(Args, Debug)]
6pub(crate) struct RCmdCheckArg {
7 #[arg(long, default_value = "false", help = "Passed to R CMD check")]
8 pub(crate) no_build_vignettes: bool,
9 #[arg(
10 long,
11 default_value = "warning",
12 help = "Determines which R CMD check errors to fail on"
13 )]
14 pub(crate) error_on: ErrorOn,
15 #[arg(long, help = "Defaults to a temporary directory")]
16 pub(crate) check_dir: Option<String>,
17}
18
19#[derive(ValueEnum, Debug, Clone, Copy, Eq, PartialEq)]
20pub(crate) enum ErrorOn {
21 Never,
22 Note,
23 Warning,
24 Error,
25}
26
27impl From<ErrorOn> for RCmdCheckErrorOn {
28 fn from(val: ErrorOn) -> Self {
29 match val {
30 ErrorOn::Never => RCmdCheckErrorOn::Never,
31 ErrorOn::Note => RCmdCheckErrorOn::Note,
32 ErrorOn::Warning => RCmdCheckErrorOn::Warning,
33 ErrorOn::Error => RCmdCheckErrorOn::Error,
34 }
35 }
36}