diff options
| author | Miquel Sabaté Solà <mssola@mssola.com> | 2026-01-29 22:03:31 +0100 |
|---|---|---|
| committer | Miquel Sabaté Solà <mssola@mssola.com> | 2026-01-29 22:03:31 +0100 |
| commit | ea33d92514c809a2efaa9940ce05a5765f3cb41c (patch) | |
| tree | bd9a82424a191b33bb2e0c44513d71c3c05432cb /crates/cli/src/exercises.rs | |
| parent | 3980cc7c38f043c53c9811078101d7a78de3f8d1 (diff) | |
| download | mihi-ea33d92514c809a2efaa9940ce05a5765f3cb41c.tar.gz mihi-ea33d92514c809a2efaa9940ce05a5765f3cb41c.zip | |
Split lib.rs into multiple files
Signed-off-by: Miquel Sabaté Solà <mssola@mssola.com>
Diffstat (limited to 'crates/cli/src/exercises.rs')
| -rw-r--r-- | crates/cli/src/exercises.rs | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/crates/cli/src/exercises.rs b/crates/cli/src/exercises.rs index 39af6c3..ef89a0c 100644 --- a/crates/cli/src/exercises.rs +++ b/crates/cli/src/exercises.rs @@ -1,5 +1,8 @@ use inquire::{Confirm, Editor, Select, Text}; -use mihi::{Exercise, ExerciseKind}; +use mihi::exercise::{ + create_exercise, delete_exercise, find_exercise_by_title, select_by_title, update_exercise, + Exercise, ExerciseKind, +}; use std::vec::IntoIter; // Show the help message. @@ -107,7 +110,7 @@ fn create(args: IntoIter<String>) -> i32 { }; let title = exercise.title.clone(); - match mihi::create_exercise(exercise) { + match create_exercise(exercise) { Ok(_) => { println!("Exercise '{title}' has been successfully created!"); 0 @@ -120,7 +123,7 @@ fn create(args: IntoIter<String>) -> i32 { } fn select_single_exercise(search: Option<String>) -> Result<Exercise, String> { - let exercises = mihi::select_by_title(search)?; + let exercises = select_by_title(search)?; let title = match exercises.len() { 0 => return Err("not found".to_string()), @@ -134,7 +137,7 @@ fn select_single_exercise(search: Option<String>) -> Result<Exercise, String> { }, }; - mihi::find_exercise_by_title(title.as_str()) + find_exercise_by_title(title.as_str()) } fn edit(mut args: IntoIter<String>) -> i32 { @@ -160,7 +163,7 @@ fn edit(mut args: IntoIter<String>) -> i32 { }; let title = exercise.title.clone(); - match mihi::update_exercise(exercise) { + match update_exercise(exercise) { Ok(_) => { println!("Exercise '{title}' has been successfully updated!"); 0 @@ -178,7 +181,7 @@ fn ls(mut args: IntoIter<String>) -> i32 { return 1; } - let exercises = mihi::select_by_title(args.next()).unwrap_or(vec![]); + let exercises = select_by_title(args.next()).unwrap_or(vec![]); for exe in exercises { println!("- '{}'", exe); } @@ -208,7 +211,7 @@ fn rm(mut args: IntoIter<String>) -> i32 { .prompt(); match ans { - Ok(true) => match mihi::delete_exercise(selection) { + Ok(true) => match delete_exercise(selection) { Ok(_) => println!("Removed '{selection}' from the database!"), Err(e) => { println!("error: words: {e}"); |
