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}