Skip to main content

icydb_model/base/types/
bytes.rs

1//! Module: base::types::bytes
2//!
3//! Responsibility: base domain type declarations.
4//! Does not own: runtime storage, query execution, or validator implementation internals.
5//! Boundary: declares macro-modeled domain wrappers and records for downstream schemas.
6
7use crate::prelude::*;
8
9///
10/// Utf8
11///
12
13#[newtype(
14    primitive = "Blob",
15    item(prim = "Blob", unbounded),
16    traits(remove(ValidateCustom))
17)]
18pub struct Utf8;
19
20impl ValidateCustom for Utf8 {
21    fn validate_custom(&self, ctx: &mut dyn VisitorContext) {
22        base::validator::bytes::Utf8.validate(self.0.as_bytes(), ctx);
23    }
24}