encode_schema

Function encode_schema 

Source
pub fn encode_schema(
    json: &str,
    compress: Option<SchemaCompressionAlgo>,
) -> Result<String, SchemaError>
Expand description

Encode JSON to schema format: JSON → IR → binary → [compress] → display96 → framed

Transforms JSON into a compact, display-safe wire format suitable for LLM-to-LLM communication. The output is wrapped in Egyptian hieroglyph delimiters (𓍹...𓍺) and uses a 96-character alphabet of box-drawing and geometric shapes.

§Arguments

  • json - JSON string to encode (must be object or array of objects)
  • compress - Optional compression algorithm (brotli, lz4, or zstd)

§Returns

Returns a framed, display-safe string like 𓍹{encoded_payload}𓍺

§Errors

  • SchemaError::InvalidInput - Invalid JSON or unsupported structure (e.g., root primitives)
  • SchemaError::Compression - Compression failure

§Example

use base_d::{encode_schema, SchemaCompressionAlgo};

let json = r#"{"users":[{"id":1,"name":"alice"}]}"#;

// Without compression
let encoded = encode_schema(json, None)?;
println!("{}", encoded); // 𓍹╣◟╥◕◝▰◣◥▟╺▖◘▰◝▤◀╧𓍺

// With brotli compression
let compressed = encode_schema(json, Some(SchemaCompressionAlgo::Brotli))?;

§See Also