aboutsummaryrefslogtreecommitdiff
path: root/vendor/dialoguer/examples/completion.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/dialoguer/examples/completion.rs')
-rw-r--r--vendor/dialoguer/examples/completion.rs44
1 files changed, 0 insertions, 44 deletions
diff --git a/vendor/dialoguer/examples/completion.rs b/vendor/dialoguer/examples/completion.rs
deleted file mode 100644
index 76d790b..0000000
--- a/vendor/dialoguer/examples/completion.rs
+++ /dev/null
@@ -1,44 +0,0 @@
-use dialoguer::{theme::ColorfulTheme, Completion, Input};
-
-fn main() -> Result<(), std::io::Error> {
- println!("Use the Right arrow or Tab to complete your command");
- let completion = MyCompletion::default();
- Input::<String>::with_theme(&ColorfulTheme::default())
- .with_prompt("dialoguer")
- .completion_with(&completion)
- .interact_text()?;
- Ok(())
-}
-
-struct MyCompletion {
- options: Vec<String>,
-}
-
-impl Default for MyCompletion {
- fn default() -> Self {
- MyCompletion {
- options: vec![
- "orange".to_string(),
- "apple".to_string(),
- "banana".to_string(),
- ],
- }
- }
-}
-
-impl Completion for MyCompletion {
- /// Simple completion implementation based on substring
- fn get(&self, input: &str) -> Option<String> {
- let matches = self
- .options
- .iter()
- .filter(|option| option.starts_with(input))
- .collect::<Vec<_>>();
-
- if matches.len() == 1 {
- Some(matches[0].to_string())
- } else {
- None
- }
- }
-}