summaryrefslogtreecommitdiff
path: root/src/app_state.rs
diff options
context:
space:
mode:
authormo8it <mo8it@proton.me>2024-05-13 02:32:25 +0200
committermo8it <mo8it@proton.me>2024-05-13 02:32:25 +0200
commitf9e35a4344cd7d51923f1983cf824fb36be92d50 (patch)
tree6a41653c14dcce73c398ebfec3051102d2c2566a /src/app_state.rs
parent052573904604896398a6cc7281398fa9fdf8f083 (diff)
Improve input handling
Diffstat (limited to 'src/app_state.rs')
-rw-r--r--src/app_state.rs10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/app_state.rs b/src/app_state.rs
index 492be34..85639e5 100644
--- a/src/app_state.rs
+++ b/src/app_state.rs
@@ -21,8 +21,12 @@ const BAD_INDEX_ERR: &str = "The current exercise index is higher than the numbe
#[must_use]
pub enum ExercisesProgress {
+ // All exercises are done.
AllDone,
- Pending,
+ // The current exercise failed and is still pending.
+ CurrentPending,
+ // A new exercise is now pending.
+ NewPending,
}
pub enum StateFileStatus {
@@ -343,7 +347,7 @@ impl AppState {
if let Some(ind) = self.next_pending_exercise_ind() {
self.set_current_exercise_ind(ind)?;
- return Ok(ExercisesProgress::Pending);
+ return Ok(ExercisesProgress::NewPending);
}
writer.write_all(RERUNNING_ALL_EXERCISES_MSG)?;
@@ -366,7 +370,7 @@ impl AppState {
self.write()?;
- return Ok(ExercisesProgress::Pending);
+ return Ok(ExercisesProgress::NewPending);
}
writeln!(writer, "{}", "ok".green())?;