Answer stability round 3, product-owner round 3 and prose round 1: a column reading a bound column takes its datatype and null, a column bound in part draws afresh, and plainer wording across the README, decisions, plan and errors

This commit is contained in:
2026-10-05 10:04:11 +02:00
committed by Lillem4n
parent dfde34556e
commit f89ffd1b73
17 changed files with 121 additions and 85 deletions
+4 -1
View File
@@ -269,7 +269,7 @@ func renderRecord(s *generatorState, t *template, columns []Column, sc renderSco
field := t.fields[r.columns[i].Name]
var column readValue
if b := bindingOfWhole(t, field); b != nil {
column = readName(s, sc, arm{kind: namedRead, named: b, levels: []string{""}})
column = readName(s, sc, arm{kind: namedRead, named: b, levels: wholeLevels})
} else {
column = renderLeaf(s, field, sc)
}
@@ -278,6 +278,9 @@ func renderRecord(s *generatorState, t *template, columns []Column, sc renderSco
return r
}
// wholeLevels is the levels of a read of a whole name, as linkName compiles {n}.
var wholeLevels = []string{""}
// bindingOfWhole is the name t binds to the whole of field, whose pick the field's column renders
// so the row agrees with the columns reading the name; nil where none does.
func bindingOfWhole(t *template, field node) *nameBinding {