rapx/cli/check.rs
1use super::OptLevel;
2use clap::Args;
3
4/// Arguments for the `check` command.
5#[derive(Debug, Clone, Args)]
6pub struct CheckArgs {
7 /// detect use-after-free/double-free
8 #[arg(
9 short = 'f',
10 num_args=0..=1,
11 default_missing_value = "1",
12 long,
13 )]
14 pub uaf: Option<usize>,
15
16 /// detect memory leakage
17 #[arg(short = 'm', long)]
18 pub mleak: bool,
19
20 /// automatically detect code optimization chances
21 #[arg(short = 'o', long, default_missing_value = "default")]
22 pub opt: Option<OptLevel>,
23
24 /// (under development) infer the safety properties required by unsafe APIs.
25 #[arg(long)]
26 pub infer: bool,
27
28 /// (under development) verify if the safety requirements of unsafe API are satisfied.
29 #[arg(long)]
30 pub verify: bool,
31
32 /// (under development) verify if the safety requirements of unsafe API are satisfied.
33 #[arg(long)]
34 pub verify_std: bool,
35}