1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
crate::ix!();

pub struct ArgDescriptor {
    pub name:      &'static str,
    pub help:      String,
    pub flags:     ArgsManagerFlags,
    pub category:  OptionsCategory,
}

#[derive(Default)]
pub struct ArgsManagerArg
{
    pub help_param: String,
    pub help_text:  String,
    pub flags:      u32,
}

impl ArgsManagerArg {
    pub fn new(
        help_param: &str, 
        help_text:  &str, 
        flags:      ArgsManagerFlags) -> Self 
    {
        Self {
            help_param: help_param.to_string(),
            help_text:  help_text.to_string(),
            flags:      flags.bits()
        }
    }
}