6 releases (3 breaking)
0.21.2 | May 7, 2024 |
---|---|
0.21.1 | May 3, 2024 |
0.20.0 | Sep 15, 2022 |
0.19.1 | Mar 19, 2022 |
0.16.1 | Oct 28, 2020 |
#114 in Text editors
8,664 downloads per month
Used in 11 crates
(10 directly)
34MB
1M
SLoC
tree-sitter-c-sharp
C# grammar for tree-sitter based upon the Roslyn grammar with changes in order to:
- Deal with differences between the parsing technologies
- Work around some bugs in that grammar
- Handle
#if
,#else
,#elif
,#endif
blocks - Support syntax highlighting/parsing of fragments
- Simplify the output tree
- Reduce parser state count and complexity
- Be in-line with tree-sitter's convention where applicable
Status
Comprehensive supports C# 1 through 13.0 with the following exception:
-
async
,var
andawait
cannot be used as identifiers everywhere they are valid
References
- Official C# 6 Language Spec provides chapters that formally define the language grammar.
- Roslyn C# language grammar export
- SharpLab (web-based syntax tree playground based on Roslyn)
Dependencies
~2.7–4MB
~71K SLoC