maybe_initial/
maybe_initial.rs1use may_clack::{cancel, error::ClackError, input, intro, outro};
2use owo_colors::OwoColorize;
3
4fn main() -> Result<(), ClackError> {
5 println!();
6 intro!(" maybe_initial ".reversed());
7
8 let opt = Some("test");
9
10 #[allow(clippy::needless_borrows_for_generic_args)]
11 let ref_opt = input("message")
12 .maybe_initial(&opt)
13 .cancel(do_cancel)
14 .required()?;
15 let opt = input("message")
16 .maybe_initial(opt)
17 .cancel(do_cancel)
18 .required()?;
19 let none = input("message")
20 .maybe_initial(None::<&str>)
21 .cancel(do_cancel)
22 .required()?;
23
24 outro!();
25
26 println!("ref_opt {ref_opt:?}");
27 println!("opt {opt:?}");
28 println!("none {none:?}");
29
30 Ok(())
31}
32
33fn do_cancel() {
34 cancel!("demo cancelled");
35 panic!("demo cancelled");
36}