Answer prose round 1: plainer decision titles and body, comments that say what the code cannot, and claims New no longer makes

This commit is contained in:
2026-10-03 17:57:04 +02:00
committed by Lillem4n
parent a9eb337ec7
commit 53431ab908
9 changed files with 56 additions and 52 deletions
+7 -6
View File
@@ -499,7 +499,7 @@ table, `{/misc.currency[SEK].symbol}` on one row and `{/misc.currency[EUR].symbo
on the next, since only one row renders. `New` proves the header, the options and every
cell token, and refuses a TSV no category names, a key that is empty or repeats, a
weight that is not a positive number, and a key or name holding `[`, `]`, `{`, `}`,
`"` or `|`, which a selector cannot spell; `New` maps the keys, and a name or parent column
`"` or `|`, which a selector cannot spell; the table's load maps the keys, and a name or parent column
is mapped on the first draw that selects by name or descends through the table. A `name` needs a `key`, since a name naming several rows is reported by
their keys, or a `parent`, inside whose row a name names one row, so `first-name[Kim]`
is settled by the `sex` selected before it and a name repeating inside one parent row
@@ -813,11 +813,12 @@ token {w} is repeated, and uppercase operand "w" holds "w" to one draw per expan
The target is about a microsecond per value (goal 12).
Each file is parsed, validated and weight-indexed once, bar a table's name and parent
columns, which are mapped on the first `Fake` that selects by name or descends through
it. With the shipped set alone, `New` loads nothing: a category loads on the first call
reaching it, with every category it reads and every table linked to it. Beside
`--data-path`, `WithDataPath` or `WithDataFS`, every category loads in `New`. Proving the draw fences adds a pass over the loaded tree per
With only the shipped set, `New` loads nothing: a category loads on the first `Fake`,
`FakeRecord`, `FakeStruct` or template that reads it, with every category it reads and
its whole table family. Beside `--data-path`, `WithDataPath` or `WithDataFS`, every
category loads in `New`. Each file is parsed, validated and weight-indexed once, bar a
table's name and parent columns, which are mapped on the first `Fake` that selects by
name or descends through it. Proving the draw fences adds a pass over the loaded tree per
fence, and walks what a render reads only where data holds a reference, so a set that
holds none pays for the passes alone. A `Fake` call then costs about what its output
costs: an unweighted pick is O(1) whatever the list's length, a weighted one