what2watch/src/util.rs

19 lines
409 B
Rust
Raw Normal View History

use std::{error::Error, ops::Range};
pub fn validate_optional_length<E: Error>(
opt: &Option<String>,
len_range: Range<usize>,
err: E,
) -> Result<Option<String>, E> {
if let Some(opt) = opt {
let opt = opt.trim();
if !len_range.contains(&opt.len()) {
Err(err)
} else {
Ok(Some(opt.to_string()))
}
} else {
Ok(None)
}
2023-05-29 00:55:16 +00:00
}