aboutsummaryrefslogtreecommitdiff
path: root/rprt-engine/src/monad.rs
diff options
context:
space:
mode:
Diffstat (limited to 'rprt-engine/src/monad.rs')
-rw-r--r--rprt-engine/src/monad.rs20
1 files changed, 10 insertions, 10 deletions
diff --git a/rprt-engine/src/monad.rs b/rprt-engine/src/monad.rs
index 34ff46b..ac35722 100644
--- a/rprt-engine/src/monad.rs
+++ b/rprt-engine/src/monad.rs
@@ -1,6 +1,6 @@
use crate::{
selection::{Selection, SelectionError},
- state::{EditorState, EvaluationResult, GroupedChangeError},
+ state::{EditorState, GroupedChangeError, StateResult},
};
pub enum EvaluationStrategy {
@@ -9,33 +9,33 @@ pub enum EvaluationStrategy {
}
#[derive(Debug)]
-pub enum EvaluationError {
+pub enum MonadError {
Selection(SelectionError),
GroupedChange(GroupedChangeError),
}
-impl From<SelectionError> for EvaluationError {
+impl From<SelectionError> for MonadError {
fn from(err: SelectionError) -> Self {
- EvaluationError::Selection(err)
+ MonadError::Selection(err)
}
}
-impl From<GroupedChangeError> for EvaluationError {
+impl From<GroupedChangeError> for MonadError {
fn from(err: GroupedChangeError) -> Self {
- EvaluationError::GroupedChange(err)
+ MonadError::GroupedChange(err)
}
}
pub struct EditorStateMonad {
- func: Box<dyn Fn(&EditorState) -> EvaluationResult>,
+ func: Box<dyn Fn(&EditorState) -> StateResult>,
}
impl EditorStateMonad {
- pub fn new(f: impl Fn(&EditorState) -> EvaluationResult + 'static) -> Self {
+ pub fn new(f: impl Fn(&EditorState) -> StateResult + 'static) -> Self {
Self { func: Box::new(f) }
}
- pub fn run(&self, state: &EditorState) -> EvaluationResult {
+ pub fn run(&self, state: &EditorState) -> StateResult {
(self.func)(state)
}
@@ -43,7 +43,7 @@ impl EditorStateMonad {
monads: Vec<EditorStateMonad>,
strategy: EvaluationStrategy,
state: &mut EditorState,
- ) -> Result<Selection, EvaluationError> {
+ ) -> Result<Selection, MonadError> {
match strategy {
EvaluationStrategy::Sequential => {
let mut last_selection = Selection::empty();