tree-sitter-c-sharp

C# Grammar for tree-sitter

MIT License

Downloads
33.3K
Stars
189
Committers
25

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 and await cannot be used as identifiers everywhere they are valid

References

Package Rankings
Top 7.49% on Crates.io
Top 6.48% on Proxy.golang.org
Top 2.85% on Npmjs.org
Top 35.9% on Pypi.org
Top 12.86% on Alpine-edge
Badges
Extracted from project README
CI discord matrix crates npm pypi