graphics-vector.md section 5 (Draft): what a sink exposes to assistive technology and to a text consumer, and how. Each text block's active set (the effective windows of the items that draw it, merged), the projection at a frame and the transcript as exact JSON, the text record and its digest, ruby, purposes, writing modes and the cluster rule. - wai-vector: src/text.rs (no_std, no dependency), the a11y and text commands, and vectors verify recomputing every text record. - The corpus: a new a11y group, each payload with its text record (<name>.a11y.jsonl) and its digest in the expected file; canonical and refusal vectors for TEXT. No existing expected file changes. - tests/text_layer.rs: each rule of section 5, with expected JSON written by hand from the text, each falsified once. Co-Authored-By: Claude Opus 5.5 <[email protected]>
49 lines
1.7 KiB
TOML
49 lines
1.7 KiB
TOML
# The reference implementation of `wai.graphics.vector`
|
|
# (`extensions/graphics-vector.md`): the `WOS1` and `WVG1` formats with their
|
|
# refusal order (§2), the arithmetic of §3, the text layer of §5 (the projection and
|
|
# the transcript), and the conformance vectors of `../vector-conformance/`.
|
|
#
|
|
# `no_std` with `alloc`, and no dependencies, so that a model checker can include
|
|
# its sources by `#[path]` the way `wai-verify` includes the other integer sources.
|
|
# SHA-256 is `wai-ops`'s, included by `#[path]` (`src/sha256.rs`), so the tree has
|
|
# one.
|
|
[package]
|
|
name = "wai-vector"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
rust-version = "1.97"
|
|
license = "Apache-2.0"
|
|
publish = false
|
|
description = "WAI vector graphics wai.graphics.vector: WOS1 and WVG1, the refusal order, the integer raster and conformance vectors"
|
|
|
|
[lib]
|
|
name = "wai_vector"
|
|
path = "src/lib.rs"
|
|
|
|
# The vector tool. It reads and writes files, so it is `std`; the library it drives
|
|
# is not.
|
|
[[bin]]
|
|
name = "wai-vector"
|
|
path = "src/bin/wai-vector.rs"
|
|
required-features = ["std", "author"]
|
|
|
|
[features]
|
|
default = ["author"]
|
|
std = []
|
|
# Authoring: the `WSF1` stroke source and its expansion into a `WOS1` (Annex A), the
|
|
# in-house sets' drawings, and the corpus generator that needs them. A sink has no
|
|
# stroker (§3.14), so a sink's build turns this off (`default-features = false`) and
|
|
# keeps the parsers, the raster and the recomputation of every vector.
|
|
author = []
|
|
# The 32-bit identities of RS1 (§3.5), for a fabric without `i64` and for the model
|
|
# checker; the unit tests build them too.
|
|
i32-forms = []
|
|
|
|
[lints.rust]
|
|
unexpected_cfgs = { level = "warn", check-cfg = ["cfg(kani)"] }
|
|
|
|
[dependencies]
|
|
# none
|
|
|
|
[profile.release]
|
|
debug = false
|