Skip to main content

Crate bynk_check

Crate bynk_check 

Source
Expand description

Bynk’s semantic-analysis layer — the crate between bynk-syntax and the emitter.

Holds name resolution (resolver), type checking (checker), the registries the checker dispatches and the LSP reads (kernel_methods, builtin_names), the first-party embedded sources (firstparty), actor analysis (actors), and the captured analysis tables written during resolution/checking: the binding index, inlay hints, expr_types, and locals. These tables are produced here and queried by the IDE layer (bynk-ide, a later slice): captured tables live in bynk-check, queries live above it (ADR 0102, and the crate-decomposition track’s check↔IDE seam).

Extracted from bynkc as slice 3 of the crate-decomposition track. Behaviour is unchanged; bynkc depends on this crate and re-exports its modules so its public API and the emitter/project layers above are untouched.

Re-exports§

pub use firstparty::Platform;

Modules§

actors
v0.45 actor contracts (the actors-foundations slice).
builtin_names
Centralised string literals for the language’s built-in vocabulary (refactor track item 8, v0.29.11). Built-in type/method names were compared as bare string literals scattered across the checker, emitter, and project modules; a typo was a silent never-match. One edit point per name now.
checker
Type checker and refinement validator (spec §§5–6, v0.1 §4.2, v0.2 §4.2).
expr_types
v0.30.2 (ADR 0063): the expression-type sink.
firstparty
First-party standard adapters embedded in the toolchain (v0.17 §4.2).
hints
v0.27 (ADR 0056): the inlay-hint sink.
index
v0.25: the project-wide binding index (ADR 0053).
kernel_methods
v0.30.2 (ADR 0063): the enumerable kernel-method registry.
locals
v0.31 (ADR 0064): the local-binding sink.
requirements
v0.99 (ADR — agent capability provenance): the capability-requirement ledger.
resolver
Name resolution (spec §5.1, v0.1 §4.1, v0.2 §4.1).