Expand description
Lossless CST parser, typed AST wrappers, and incremental reparser for the R language.
This crate is the parsing engine of arity, extracted so
that other tools can build on it. The public surface mirrors the module
layout of the arity crate itself:
syntax—SyntaxKind, the rowan language definition, and position-independent node pointers.parser— the lossless parser (parse/reconstruct), diagnostics, the incremental reparse entry points (reparse,apply_edits), and the predicates that judge a parse against R’s own acceptance rules (is_single_expression).ast— zero-cost typed wrappers over the CST, in rust-analyzer’s mould.dcf— a second, independent grammar: a lossless CST for DCF, the format of R’sDESCRIPTION.namespace— a typed, lossless view of R packageNAMESPACEfiles, built on the R CST without evaluating conditional directives.
The parser preserves all source text: reconstruct(&parse(text).syntax())
is always text.