9 unstable releases (4 breaking)

0.23.1 Nov 11, 2024
0.23.0 Sep 1, 2024
0.21.3 Jul 8, 2024
0.21.2 May 7, 2024
0.16.1 Oct 28, 2020

#1930 in Parser implementations

Download history 2531/week @ 2024-12-23 4091/week @ 2024-12-30 3560/week @ 2025-01-06 4839/week @ 2025-01-13 7274/week @ 2025-01-20 10827/week @ 2025-01-27 11689/week @ 2025-02-03 13393/week @ 2025-02-10 11754/week @ 2025-02-17 11285/week @ 2025-02-24 14244/week @ 2025-03-03 12805/week @ 2025-03-10 10428/week @ 2025-03-17 7493/week @ 2025-03-24 6129/week @ 2025-03-31 6057/week @ 2025-04-07

30,636 downloads per month
Used in 24 crates (20 directly)

MIT license

35MB
1M SLoC

C 1M SLoC // 0.0% comments JavaScript 2K SLoC // 0.0% comments Scheme 181 SLoC // 0.1% comments Rust 33 SLoC // 0.1% comments

tree-sitter-c-sharp

CI discord matrix crates npm pypi

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

Dependencies