Skip to content

Add analyzer for rascal LSP server #1121

@DavyLandman

Description

@DavyLandman

Is your feature request related to a problem? Please describe.
For DSLs we've added (see #356) support for quick typecheckers/lints called an analyzer, and expensive checks on save called builders. For rascal there are certain checks we could also do much faster&frequent, without waiting for the typechecker to trigger.

Describe the solution you'd like

Every successful parse (so no errors) we trigger an analyzer, that triggers a rascal module that (ideally only once) visits the parse tree and reports warnings/errors on them. Ideally with quick fixes.

The first consumer would be the annotation rewrite code (introduced in #1099). Another one would be a fix on the filename vs module header.

Describe alternatives you've considered
Wait for the typechecker to complete.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions