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}