Language support for the Bean programming language.
Features
Completion — . lists data members and methods (but a method named like an accessible data member, whose . call is ambiguous), -> lists methods and macros, @ lists attributes.
Hover & Go to Definition — types for variables, fields, parameters and members.
Signature help — parameter hints as you type a call.
Inlay hints — inferred var types and parameter names, shown inline.
Formatting — re-indents the document. // fmt:off and // fmt:on skip a region.
Folding — by braces, so an access label does not cut a type body short. Each if/#if arm folds on its own.
Outline & breadcrumbs — the declarations of a file, nested as written.
Diagnostics on save — runs the Bean compiler and marks reported errors.
Syntax highlighting for .bean files.
Settings
Setting
Default
Description
bean.compilerPath
bean
Bean compiler used for diagnostics.
bean.projectFile
bean.bpj
Project file passed to bean buildtest.
bean.diagnosticsOnSave
true
Show error positions on save.
bean.inlayHints
true
Inferred-type and parameter-name inlay hints.
Note
Each workspace folder is a project of its own, read by its own .bpj.
Analysis is based purely on parsing. Macro and comptime expansion and #if
conditions are not evaluated — members from every branch are surfaced.