hello_generated/
hello-generated.rs1mod flags {
2    #![allow(unused)]
3
4    xflags::xflags! {
5        src "./examples/hello-generated.rs"
6
7        cmd hello {
9            required name: String
11
12            optional -e, --emoji
14        }
15    }
16
17    #[derive(Debug)]
21    pub struct Hello {
22        pub name: String,
23
24        pub emoji: bool,
25    }
26
27    impl Hello {
28        #[allow(dead_code)]
29        pub fn from_env() -> xflags::Result<Self> {
30            Self::from_env_()
31        }
32
33        #[allow(dead_code)]
34        pub fn from_vec(args: Vec<std::ffi::OsString>) -> xflags::Result<Self> {
35            Self::from_vec_(args)
36        }
37    }
38    }
40
41fn main() {
42    match flags::Hello::from_env() {
43        Ok(flags) => {
44            let bang = if flags.emoji { "❣️" } else { "!" };
45            println!("Hello {}{}", flags.name, bang);
46        }
47        Err(err) => err.exit(),
48    }
49}