pub struct Selection { /* private fields */ }Expand description
Opinionated struct for handling selection input from the user.
Implementations§
Source§impl Selection
impl Selection
Sourcepub fn message(self, msg: &str) -> Self
pub fn message(self, msg: &str) -> Self
Sets the prompt message for the selection.
Examples found in repository?
examples/demo.rs (line 29)
3fn main() {
4 let zci = ZenConsoleInput::new();
5
6 // Simple input
7 let name = zci.input().message("Enter your name: ").get_input();
8 println!("Hello, {}!", name);
9
10 // Input with default value
11 let age: u32 = zci
12 .input()
13 .message("Enter your age [19]: ")
14 .default("19")
15 .get_parsed_input();
16 println!("You are {} years old.", age);
17
18 // Multiline input (with optional editor support)
19 let bio = zci
20 .input()
21 .message("Enter your bio")
22 .multiline()
23 .get_input();
24 println!("Your bio:\n{}", bio);
25
26 // Selection
27 let favorite_color = zci
28 .selection()
29 .message("Choose your favorite color")
30 .options(vec![
31 "Red".to_string(),
32 "Green".to_string(),
33 "Blue".to_string(),
34 ])
35 .get_selection();
36 println!("Your favorite color is {}", favorite_color);
37
38 // Password
39 let password = zci
40 .password()
41 .message("Enter your password: ")
42 .get_password();
43 println!("Your password is {} characters long", password.len());
44}Sourcepub fn options(self, opts: Vec<String>) -> Self
pub fn options(self, opts: Vec<String>) -> Self
Sets the list of options for the selection.
Examples found in repository?
examples/demo.rs (lines 30-34)
3fn main() {
4 let zci = ZenConsoleInput::new();
5
6 // Simple input
7 let name = zci.input().message("Enter your name: ").get_input();
8 println!("Hello, {}!", name);
9
10 // Input with default value
11 let age: u32 = zci
12 .input()
13 .message("Enter your age [19]: ")
14 .default("19")
15 .get_parsed_input();
16 println!("You are {} years old.", age);
17
18 // Multiline input (with optional editor support)
19 let bio = zci
20 .input()
21 .message("Enter your bio")
22 .multiline()
23 .get_input();
24 println!("Your bio:\n{}", bio);
25
26 // Selection
27 let favorite_color = zci
28 .selection()
29 .message("Choose your favorite color")
30 .options(vec![
31 "Red".to_string(),
32 "Green".to_string(),
33 "Blue".to_string(),
34 ])
35 .get_selection();
36 println!("Your favorite color is {}", favorite_color);
37
38 // Password
39 let password = zci
40 .password()
41 .message("Enter your password: ")
42 .get_password();
43 println!("Your password is {} characters long", password.len());
44}Sourcepub fn get_selection(&self) -> String
pub fn get_selection(&self) -> String
Gets the selected option from the user.
Examples found in repository?
examples/demo.rs (line 35)
3fn main() {
4 let zci = ZenConsoleInput::new();
5
6 // Simple input
7 let name = zci.input().message("Enter your name: ").get_input();
8 println!("Hello, {}!", name);
9
10 // Input with default value
11 let age: u32 = zci
12 .input()
13 .message("Enter your age [19]: ")
14 .default("19")
15 .get_parsed_input();
16 println!("You are {} years old.", age);
17
18 // Multiline input (with optional editor support)
19 let bio = zci
20 .input()
21 .message("Enter your bio")
22 .multiline()
23 .get_input();
24 println!("Your bio:\n{}", bio);
25
26 // Selection
27 let favorite_color = zci
28 .selection()
29 .message("Choose your favorite color")
30 .options(vec![
31 "Red".to_string(),
32 "Green".to_string(),
33 "Blue".to_string(),
34 ])
35 .get_selection();
36 println!("Your favorite color is {}", favorite_color);
37
38 // Password
39 let password = zci
40 .password()
41 .message("Enter your password: ")
42 .get_password();
43 println!("Your password is {} characters long", password.len());
44}Auto Trait Implementations§
impl Freeze for Selection
impl RefUnwindSafe for Selection
impl Send for Selection
impl Sync for Selection
impl Unpin for Selection
impl UnsafeUnpin for Selection
impl UnwindSafe for Selection
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more