Socket
Socket
Sign inDemoInstall

tree-sitter-c-sharp

Package Overview
Dependencies
13
Maintainers
4
Versions
13
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    tree-sitter-c-sharp

C# grammar for tree-sitter


Version published
Weekly downloads
4.3K
increased by4.54%
Maintainers
4
Created
Weekly downloads
 

Readme

Source

tree-sitter-c-sharp

Build Status

C# grammar for tree-sitter based on an export of the Roslyn grammar export with various 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

Status

Comprehensive support for C# exists with the following exceptions:

  • async and await cannot be used as identifiers
C# 7.0 (complete)
  • Tuples
  • Discards
  • Basic pattern matching
  • Recursive pattern matching
  • Ref locals and return
  • Local function statements
  • Expression bodied constructors
  • Expression bodied destructors/finalizers
  • Throw expressions
  • Binary and _ literal support
C# 7.1 (complete)
  • async main method
  • Default literals (as default_expression)
  • Inferred tuple element names
  • Generic type pattern matching
C# 7.2 (complete)
  • in parameter modifiers
  • ref readonly method returns
  • readonly struct
  • ref struct
  • Non-named trailing arguments
  • _ leading binary and hex literals
  • private protected modifier
  • Conditional ref expressions
C# 7.3 (complete)
  • stackalloc array initializers
  • unmanaged generic type parameter constraint
  • Attributes attached to auto property backing fields
  • out support for parameters on initializers, constructors etc.
C# 8.0 (complete)
  • readonly members
  • Default interface methods
  • switch expressions
  • switch property patterns
  • switch tuple patterns
  • static local functions
  • Nullable reference types
  • Null-forgiving operator
  • Null-coalescing assignment
C# 9.0 (complete)
  • Covariant returns
  • Extending partial methods
  • Extension GetEnumerator
  • Function pointers
  • Init properties
  • Lambda discard parameters
  • Local function attributes
  • Module initializers
  • Native integers
  • Patterns
    • Simple type patterns
    • Relational patterns
    • Logical patterns
  • Records
  • Skip Locals Init
  • Static anonymous functions
  • Target-typed conditional expression
  • Target-typed new
  • Top-level statements

References

Keywords

FAQs

Last updated on 04 Mar 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc