Bynk — Rust crate API docs
Generated rustdoc for the Bynk workspace crates — the compiler
internals behind the toolchain. Most users compile Bynk
through the bynkc / bynk CLIs rather than depending on
these crates directly. Back to the Developer Documentation.
-
bynk-syntaxThe syntax foundation of the Bynk compiler: lexer, parser, AST, spans, the CompileError type, and the diagnostic-code registry.
-
bynk-tsThe TypeScript tree and printer of the Bynk compiler: emission builds nodes, and this printer is the only code that writes emitted text.
-
bynk-renderDiagnostic rendering for the Bynk compiler: ariadne human output and the short line form, shared by both CLIs.
-
bynk-checkThe semantic-analysis layer of the Bynk compiler: name resolution, type checking, the kernel and builtin registries, first-party sources, and the analysis tables the IDE queries.
-
bynk-irThe declaration-level IR the Bynk emitter reads: service protocols, handler kinds, type shapes, store fields, and capability signatures, plus shared AST-walk helpers.
-
bynk-lowerThe helpers that build the Bynk emitter's declaration-level IR (bynk-ir) from a checked program.
-
bynk-projectThe project model of the Bynk compiler: discovery, the unit dependency graph, path resolution, cross-unit consistency checks, and the schema-registry document.
-
bynk-emitBuild orchestration and TypeScript emission for the Bynk compiler.
-
bynk-driverThe command bodies shared by the Bynk CLIs (bynkc and bynk): project rooting, check, fmt, test, and output writing.
-
bynk-stripStrip-only TypeScript-to-JavaScript for the Bynk compiler: erases type syntax with oxc, preserving runtime semantics and value imports.
-
bynk-wasmThe Bynk compiler as a wasm module for the in-browser REPL/playground: a single `bynk_compile` entry that compiles an in-memory Bynk source to a runnable JavaScript module graph + diagnostics, with no filesystem and no tsc. Not published — it is the playground's build artefact.
-
bynk-ideThe IDE analysis surface of the Bynk compiler: non-bailing single-file and project diagnostics, and the editor queries a language server consumes.
-
bynkcThe Bynk compiler CLI: type-checks Bynk source and compiles it to typed TypeScript for Cloudflare Workers.
-
bynkThe Bynk developer driver: links the compiler in-process and orchestrates the Node toolchain (doctor, new, dev, deploy, check, fmt, test, explain).
-
bynk-fmtThe formatter for the Bynk language.
-
bynk-grammarRenders the Bynk tree-sitter grammar to EBNF for the language reference.
-
bynk-lspbynkc-lsp, the Language Server for the Bynk language.
-
bynk-testkitContent-ownership track (#1086) slice 3: cross-crate test fixtures built directly on bynk-ide's production discovery (bynk_ide::discover_files), so a test's complete sources map can never resolve include/exclude differently from what actually gets compiled or analysed. Not a product crate: dev-only, unpublished, kept off the release workflows' crate list.
-
tree-sitter-bynkRust binding for the tree-sitter-bynk grammar. Not a product crate: it exists so the cross-parser conformance test can parse Bynk with tree-sitter and diff the result against bynk-syntax. Unpublished, kept off the release workflows' crate list.
-
xtaskRepo automation for Bynk — the increment-allocation tooling. Slice 0 validates the pending-increment files under design/pending/; the merge-time stamp (version + ADR-number assignment) lands in later slices. Not a product crate: unpublished, kept off the release workflows' crate list.