Spell readSurvey.walk's dropped cell as a default arm
This commit is contained in:
+4
-3
@@ -96,9 +96,7 @@ func (s *readSurvey) pinsID(p *pinSet) pinsID {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// walk follows what rendering n renders. A repeat renders over draws of its own, so the walk stops
|
// walk follows what rendering n renders. A repeat renders over draws of its own, so the walk stops
|
||||||
// there. A cell whose row the pins keep out has no case: a pinned table renders its pinned row
|
// there.
|
||||||
// alone and an unpinned one draws a row inside its nearest pinned ancestor's, so that cell never
|
|
||||||
// renders on this route.
|
|
||||||
func (s *readSurvey) walk(n node, at surveyAt) {
|
func (s *readSurvey) walk(n node, at surveyAt) {
|
||||||
v := nodeVisit{n, at.group, at.wholeTable, s.pinsID(&at.pins), s.pinsID(&at.wholePins)}
|
v := nodeVisit{n, at.group, at.wholeTable, s.pinsID(&at.pins), s.pinsID(&at.wholePins)}
|
||||||
if s.seen[v] {
|
if s.seen[v] {
|
||||||
@@ -132,6 +130,9 @@ func (s *readSurvey) walk(n node, at surveyAt) {
|
|||||||
in := at
|
in := at
|
||||||
in.pins = at.pins.entered(cell.table, cell.row)
|
in.pins = at.pins.entered(cell.table, cell.row)
|
||||||
s.edge(n, e, in)
|
s.edge(n, e, in)
|
||||||
|
default:
|
||||||
|
// A pinned table renders its pinned row alone, and an unpinned one draws a row inside its
|
||||||
|
// nearest pinned ancestor's, so a cell of a row the pins clash with never renders here.
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,8 +26,6 @@ least modify.
|
|||||||
|
|
||||||
This round, in order:
|
This round, in order:
|
||||||
|
|
||||||
- Spell `readSurvey.walk`'s dropped cell as a case of its switch: a clashing row's cell
|
|
||||||
falls out with no arm, which four seats named.
|
|
||||||
- Define `descended` where `table.route` takes it: five seats reverse-engineered it from
|
- Define `descended` where `table.route` takes it: five seats reverse-engineered it from
|
||||||
the `draw` expression and the four walks' loop condition.
|
the `draw` expression and the four walks' loop condition.
|
||||||
- Keep a template's table in one field: `template.table` and `template.cell.table` both
|
- Keep a template's table in one field: `template.table` and `template.cell.table` both
|
||||||
|
|||||||
Reference in New Issue
Block a user