2020-04-27 11:06:00 -07:00
|
|
|
#[derive(PartialEq, Debug)]
|
|
|
|
pub enum SanitizeError {
|
|
|
|
Failed,
|
|
|
|
IndexOutOfBounds,
|
|
|
|
ValueOutOfRange,
|
2020-04-27 20:22:30 -07:00
|
|
|
InvalidValue,
|
2020-04-27 11:06:00 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
pub trait Sanitize {
|
|
|
|
fn sanitize(&self) -> Result<(), SanitizeError> {
|
|
|
|
Ok(())
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
impl<T: Sanitize> Sanitize for Vec<T> {
|
|
|
|
fn sanitize(&self) -> Result<(), SanitizeError> {
|
|
|
|
for x in self.iter() {
|
|
|
|
x.sanitize()?;
|
|
|
|
}
|
|
|
|
Ok(())
|
|
|
|
}
|
|
|
|
}
|