Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 26s
Adds Go struct types to gp-parse-type:
struct {} → (list :ty-struct ())
struct { x int } → (list :ty-struct [(:field [x] (:ty-name int))])
struct { x int; y string } → multiple field rows
struct { x, y int } → shared-type row (NAMES is a list)
struct { inner struct { x int } } → nested struct types
gp-parse-struct-fields walks field rows tolerating ASI-inserted semis
(from newlines between fields). Each row collects 1+ names separated
by commas, then a single type that all the names share. Embedded
fields, field tags, and methods are deferred.
The :field shape (NAMES + TYPE) is a recurring multi-language pattern —
struct fields, func params, method receivers, var decls all map to it.
Logged in Blockers as a canonical-AST candidate
(ast-binding-group / ast-named-of-type); worth promoting once a second
consumer (parser of another statically-typed guest, or Go func decls)
exercises the same shape.
parse 98/98, total 227/227.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
16 lines
316 B
Markdown
16 lines
316 B
Markdown
# Go-on-SX Scoreboard
|
|
|
|
**Total: 227 / 227 tests passing**
|
|
|
|
| | Suite | Pass | Total |
|
|
|---|---|---|---|
|
|
| ✅ | lex | 129 | 129 |
|
|
| ✅ | parse | 98 | 98 |
|
|
| ⬜ | types | 0 | 0 |
|
|
| ⬜ | eval | 0 | 0 |
|
|
| ⬜ | runtime | 0 | 0 |
|
|
| ⬜ | stdlib | 0 | 0 |
|
|
| ⬜ | e2e | 0 | 0 |
|
|
|
|
Generated by `lib/go/conformance.sh`.
|