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    source_key = "crates/icydb/src/base/types/bytes.rs::newtype::1",
15    primitive = "Blob",
16    item(prim = "Blob", unbounded),
17    traits(remove(ValidateCustom))
18)]
19pub struct Utf8;
20
21impl ValidateCustom for Utf8 {
22    fn validate_custom(&self, ctx: &mut dyn VisitorContext) {
23        base::validator::bytes::Utf8.validate(self.0.as_bytes(), ctx);
24    }
25}