Code Analysis. CSharp Namespace
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
The command line arguments to a C# Microsoft.CodeAnalysis.CSharp.CSharpCompiler.
The compilation object is an immutable representation of a single invocation of the compiler. Although immutable, a compilation is also on-demand, and will realize and cache data as necessary. A compilation can produce a new compilation from existing compilation with the application of small deltas. In many cases, it is more efficient than creating a new compilation from scratch, as the new compilation can reuse information from the old compilation.
Represents various options that affect compilation, such as whether to emit an executable or a library, whether to optimize generated code, and so on.
A GeneratorDriver implementation for the CSharp language.
This class stores several source parsing related options and offers access to their values.
Represents a non-terminal node in the syntax tree.
The parsed representation of a C# source document.
Represents a CSharpSyntaxNode visitor that visits only the single CSharpSyntaxNode passed into its Visit method.
Represents a CSharpSyntaxNode visitor that visits only the single CSharpSyntaxNode
passed into its Visit method and produces
a value of the type specified by the
Displays a symbol in the C# style.
A class containing factory methods for constructing syntax nodes, tokens and trivia.
Defines a set of methods to determine how Unicode characters are treated by the C# compiler.
Structure containing all semantic information about an await expression.
Summarizes whether a conversion is allowed, and if so, which kind of conversion (and in some cases, the associated symbol).
The representation of a deconstruction as a tree of Deconstruct methods and conversions. Methods only appear in non-terminal nodes. All terminal nodes have a Conversion.
Here's an example:
A deconstruction like
The top-level node has a Method (Deconstructable1.Deconstruct), no Conversion, but has two Nested nodes. Its first nested node has no Method, but has a Conversion (Identity). Its second nested node has a Method (Deconstructable2.Deconstruct), no Conversion, and two Nested nodes. Those last two nested nodes have no Method, but each have a Conversion (ImplicitNumeric, from int to long).
Structure containing all semantic information about a for each statement.
Semantic information associated with a query clause in a C# query expression.
Specifies the language version.
Specifies the nullable context.