Answer architecture round 1: List's walk and join sit in path.go, a compiled path's head is named head, every pick key comes from levelKeys, and readsColumn names all four readers

This commit is contained in:
2026-10-09 11:00:40 +02:00
committed by Lillem4n
parent dc03021a5d
commit 5c9b85e362
10 changed files with 109 additions and 94 deletions
+2 -2
View File
@@ -39,13 +39,13 @@ func splitArm(name string, refs map[string]resolvedRef) arm {
if resolved {
head = r.head
}
return arm{spelling: name, head: head, levels: []pickKey{pickKey(head)}}
return arm{spelling: name, head: head, levels: levelKeys([]string{head}, 1)}
}
return pathArm(name, r.head, r.tail)
}
segs, err := grammar.SplitPath(name)
if err != nil || len(segs) == 1 {
return arm{spelling: name, head: name, levels: []pickKey{pickKey(name)}}
return arm{spelling: name, head: name, levels: levelKeys([]string{name}, 1)}
}
return pathArm(name, segs[0], segs[1:])
}