icydb/base/validator/
bytes.rs

1use crate::{design::prelude::*, traits::Validator};
2
3///
4/// Utf8
5///
6
7#[validator]
8pub struct Utf8;
9
10impl Validator<[u8]> for Utf8 {
11    fn validate(&self, bytes: &[u8], ctx: &mut dyn VisitorContext) {
12        if std::str::from_utf8(bytes).is_err() {
13            ctx.issue("invalid UTF-8 data".to_string());
14        }
15    }
16}