chore(ffi-linkage): post-stream polish — vscode keywords + vestigial param + extension metadata

Two post-stream follow-ups flagged in CHECKPOINT-EXTERN-EXPORT.md, plus a
reproducible vscode-extension packaging setup:

- parser: drop the vestigial `RuntimeClassPrefix.is_extern` field and
  `parseRuntimeClassDecl`'s `is_extern` param. Always false since the
  `#foreign` token was deleted; the postfix `extern`/`export` keyword is the
  sole reference-vs-define decider. No behavior change (644 corpus / 442 unit).
- vscode grammar: highlight `extern`/`export` as `storage.modifier.sx`.
- vscode packaging: declare `@vscode/vsce` as a devDep + add `package` /
  `vscode:prepublish` scripts so the vsix rebuilds reproducibly (was an
  ambient tool). Add repository/homepage/bugs (Gitea), icon (swipelab logo,
  256x256), galleryBanner, README with cover banner. Rebuilt the vsix.
This commit is contained in:
agra
2026-06-15 12:57:07 +03:00
parent c1ab2cbfc0
commit f3c9747f5a
9 changed files with 3878 additions and 18 deletions

View File

@@ -355,11 +355,13 @@ AOT), 1227 (export fn rename, AOT), 1348 (objc extern class), 1349 (objc export
`#foreign`; the keyword is rejected; zero `foreign` remains in the gated tree (Parts
A + B, Phases 09 all done; the 9.4 gate passes). This stream can be archived.
Possible follow-ups (NOT required, NOT this stream):
- Optionally add `extern`/`export` to the editors/vscode tmLanguage keyword list (the
`#foreign` directive was removed; the new keywords aren't specially highlighted yet).
- The `RuntimeClassPrefix.is_extern` field + `parseRuntimeClassDecl`'s `is_extern`
param are now vestigial (always false post-token-deletion) — a cosmetic cleanup.
Follow-ups (both DONE 2026-06-15, post-stream polish):
- ✅ Added `extern`/`export` to the editors/vscode tmLanguage keyword list as a
`storage.modifier.sx` pattern (`editors/vscode/syntaxes/sx.tmLanguage.json`).
- ✅ Dropped the vestigial `RuntimeClassPrefix.is_extern` field +
`parseRuntimeClassDecl`'s `is_extern` param (always-false dead path; the postfix
`extern`/`export` keyword is the sole reference-vs-define decider). Suite green
(644 corpus / 442 unit, 0 failed).
--- (historical: the finish-Phase-9 plan, now done) ---
**PART B — finish Phase 9: example FILENAME renames + `issues/*.md` + 9.0/9.4.**