Name the goals behind probing a path before drawing it, and cut comments restating their code

This commit is contained in:
2026-09-30 20:17:18 +02:00
committed by Lillem4n
parent 220129584e
commit 4bf8deddb4
2 changed files with 6 additions and 7 deletions
+3 -2
View File
@@ -590,8 +590,9 @@ is until a real data set needs the indexed form.
2026-09-17, Lilleman auf Larv.
A path that fails below its first level then moves no seeded stream, at the cost of one
draw-free walk per call, which allocates nothing up to 16 steps.
Goals 8 and 11: a path that fails moves no seeded stream, at the cost of one draw-free
walk per call, compiling its steps into a stack buffer of 16. Valid while that walk
costs little against the draw it guards.
## A country's postal codes and streets are siblings under its locality
+3 -5
View File
@@ -200,12 +200,12 @@ type pathStep struct {
type stepKind uint8
const (
stepField stepKind = iota + 1 // into a field of the template at this level
stepField stepKind = iota + 1 // into a folder's entry or a template's field
stepSelect // pin the selected row of the table
stepDraw // draw a row of the table inside the pins
stepRow // land on the table's row node
stepColumn // into a column of the table
stepChild // into a table linked to the table
stepColumn
stepChild
)
// pathCheck proves a path resolves whichever way the draws go: every variant of a
@@ -408,8 +408,6 @@ func (t *table) drawStep(s *generatorState, st pathStep, pins *pinSet) node {
panic(internalError("drawStep has no case for step kind %d", st.kind))
}
// drawVariant is the variant of c a draw continues into at the step at: the one memo keeps for
// that level, drawn once, where the draw has a memo; else one drawn afresh.
func drawVariant(s *generatorState, c *choice, memo *drawMemo, levels []string, at int) node {
if memo == nil {
return resolveChoice(s, c)