Skip to main content

openlark_core/validation/
validatable.rs

1/// 可验证特质
2pub trait Validatable {
3    /// 检查是否为空或空白
4    fn is_empty_trimmed(&self) -> bool;
5}
6
7impl Validatable for &str {
8    fn is_empty_trimmed(&self) -> bool {
9        self.trim().is_empty()
10    }
11}
12
13impl Validatable for String {
14    fn is_empty_trimmed(&self) -> bool {
15        self.trim().is_empty()
16    }
17}
18
19impl<T: Validatable> Validatable for &T {
20    fn is_empty_trimmed(&self) -> bool {
21        (*self).is_empty_trimmed()
22    }
23}
24
25impl<T> Validatable for Vec<T> {
26    fn is_empty_trimmed(&self) -> bool {
27        self.is_empty()
28    }
29}
30
31impl<T> Validatable for &[T] {
32    fn is_empty_trimmed(&self) -> bool {
33        self.is_empty()
34    }
35}