summaryrefslogtreecommitdiff
path: root/excluded/validation.rs
diff options
context:
space:
mode:
Diffstat (limited to 'excluded/validation.rs')
-rw-r--r--excluded/validation.rs37
1 files changed, 0 insertions, 37 deletions
diff --git a/excluded/validation.rs b/excluded/validation.rs
deleted file mode 100644
index 6258dcf..0000000
--- a/excluded/validation.rs
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-pub trait Validation {
- fn validate(&self) -> Result<(), ValidationError>;
-}
-
-#[derive(Debug)]
-pub struct ValidationError {
- pub messages: Vec<String>,
-}
-
-impl std::fmt::Display for ValidationError {
- fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
- for msg in &self.messages {
- write!(f, "{}\n", msg)?;
- }
- Ok(())
- }
-}
-
-impl std::error::Error for ValidationError { }
-
-pub fn add_results(first: Result<(), ValidationError>, second: Result<(), ValidationError>) -> Result<(), ValidationError> {
- if first.is_ok() && second.is_ok() {
- Ok(())
- } else if first.is_ok() && second.is_err() {
- second
- } else if first.is_err() && second.is_ok() {
- first
- } else {
- let mut first = first.err().unwrap();
- let mut second = second.err().unwrap();
- first.messages.append(&mut second.messages);
-
- Err( ValidationError{ messages: first.messages } )
- }
-} \ No newline at end of file