CSharpExtensions 类

定义

public ref class CSharpExtensions abstract sealed
public static class CSharpExtensions
type CSharpExtensions = class
Public Module CSharpExtensions
继承
CSharpExtensions

方法

AnalyzeControlFlow(SemanticModel, StatementSyntax, StatementSyntax)

分析方法主体的一部分内的控制流。

AnalyzeControlFlow(SemanticModel, StatementSyntax)

分析方法主体的一部分内的控制流。

AnalyzeDataFlow(SemanticModel, ConstructorInitializerSyntax)

分析 中的 ConstructorInitializerSyntax数据流。

AnalyzeDataFlow(SemanticModel, ExpressionSyntax)

分析 中的 ExpressionSyntax数据流。

AnalyzeDataFlow(SemanticModel, PrimaryConstructorBaseTypeSyntax)

分析初始值设定项 ArgumentList 内的数据流。

AnalyzeDataFlow(SemanticModel, StatementSyntax, StatementSyntax)

分析方法主体的一部分内的数据流。

AnalyzeDataFlow(SemanticModel, StatementSyntax)

分析方法主体的一部分内的数据流。

ClassifyConversion(Compilation, ITypeSymbol, ITypeSymbol)
ClassifyConversion(SemanticModel, ExpressionSyntax, ITypeSymbol, Boolean)

确定将给定表达式转换为给定类型时将使用哪种类型的转换(如果有)。 如果 isExplicitInSource 为 true,则生成的转换是针对强制转换表达式执行转换时将使用的转换。

ClassifyConversion(SemanticModel, Int32, ExpressionSyntax, ITypeSymbol, Boolean)

确定将给定表达式转换为给定类型时将使用哪种类型的转换(如果有)。 如果 isExplicitInSource 为 true,则生成的转换是针对强制转换表达式执行转换时将使用的转换。

GetAliasInfo(SemanticModel, IdentifierNameSyntax, CancellationToken)

如果 nameSyntax 解析为别名,则返回对应于 A 的 AliasSymbol。否则返回 null。

GetAwaitExpressionInfo(SemanticModel, AwaitExpressionSyntax)
GetCollectionInitializerSymbolInfo(SemanticModel, ExpressionSyntax, CancellationToken)

返回 () 对应于 中 Initializer给定表达式语法的“Add”方法符号(如果有)。

GetCompilationUnitRoot(SyntaxTree, CancellationToken)
GetConstantValue(SemanticModel, ExpressionSyntax, CancellationToken)
GetConversion(IConversionOperation)

从此 IConversionOperation获取基础Conversion信息。 这 IConversionOperation 必须基于 CSharp 代码创建。

GetConversion(SemanticModel, SyntaxNode, CancellationToken)
GetDeclaredSymbol(SemanticModel, AccessorDeclarationSyntax, CancellationToken)

给定声明属性或成员访问器的语法节点,获取相应的符号。

GetDeclaredSymbol(SemanticModel, AnonymousObjectCreationExpressionSyntax, CancellationToken)

给定匿名对象创建表达式的语法节点,获取匿名对象类型符号。

GetDeclaredSymbol(SemanticModel, AnonymousObjectMemberDeclaratorSyntax, CancellationToken)

给定匿名对象创建初始值设定项的语法节点,获取匿名对象属性符号。

GetDeclaredSymbol(SemanticModel, ArgumentSyntax, CancellationToken)

给定元组参数的语法节点,获取元组元素符号。

GetDeclaredSymbol(SemanticModel, BaseMethodDeclarationSyntax, CancellationToken)

给定基方法声明语法,获取相应的方法符号。

GetDeclaredSymbol(SemanticModel, BasePropertyDeclarationSyntax, CancellationToken)

给定声明属性、索引器或事件的语法节点,获取相应的声明符号。

GetDeclaredSymbol(SemanticModel, BaseTypeDeclarationSyntax, CancellationToken)

给定类型声明,获取相应的类型符号。

GetDeclaredSymbol(SemanticModel, CatchDeclarationSyntax, CancellationToken)

给定 catch 声明,获取异常变量的符号

GetDeclaredSymbol(SemanticModel, CompilationUnitSyntax, CancellationToken)

给定编译单元语法,获取相应的简单程序入口点符号。

GetDeclaredSymbol(SemanticModel, DelegateDeclarationSyntax, CancellationToken)

给定委托声明,获取相应的类型符号。

GetDeclaredSymbol(SemanticModel, EnumMemberDeclarationSyntax, CancellationToken)

给定枚举成员声明,获取相应的字段符号。

GetDeclaredSymbol(SemanticModel, EventDeclarationSyntax, CancellationToken)

给定声明 (自定义) 事件的语法节点,获取相应的事件符号。

GetDeclaredSymbol(SemanticModel, ExternAliasDirectiveSyntax, CancellationToken)

给定外部别名声明后,将获取所引入别名的相应符号。

GetDeclaredSymbol(SemanticModel, FileScopedNamespaceDeclarationSyntax, CancellationToken)

给定命名空间声明语法节点,获取声明程序集的相应命名空间符号。

GetDeclaredSymbol(SemanticModel, ForEachStatementSyntax, CancellationToken)

给定 foreach 语句,获取迭代变量的符号

GetDeclaredSymbol(SemanticModel, IndexerDeclarationSyntax, CancellationToken)

给定声明索引器的语法节点,获取相应的声明符号。

GetDeclaredSymbol(SemanticModel, JoinIntoClauseSyntax, CancellationToken)

获取在 join into 子句中声明的查询范围变量。

GetDeclaredSymbol(SemanticModel, LabeledStatementSyntax, CancellationToken)

给定带标签的语句语法,获取相应的标签符号。

GetDeclaredSymbol(SemanticModel, LocalFunctionStatementSyntax, CancellationToken)

给定局部函数声明语法,获取相应的符号。

GetDeclaredSymbol(SemanticModel, MemberDeclarationSyntax, CancellationToken)

给定成员声明语法,获取相应的符号。

GetDeclaredSymbol(SemanticModel, NamespaceDeclarationSyntax, CancellationToken)

给定命名空间声明语法节点,获取声明程序集的相应命名空间符号。

GetDeclaredSymbol(SemanticModel, ParameterSyntax, CancellationToken)

给定参数声明语法节点,获取相应的符号。

GetDeclaredSymbol(SemanticModel, PropertyDeclarationSyntax, CancellationToken)

给定声明属性的语法节点,获取相应的声明符号。

GetDeclaredSymbol(SemanticModel, QueryClauseSyntax, CancellationToken)
GetDeclaredSymbol(SemanticModel, QueryContinuationSyntax, CancellationToken)

获取在查询延续子句中声明的查询范围变量。

GetDeclaredSymbol(SemanticModel, SingleVariableDesignationSyntax, CancellationToken)

给定变量声明符语法时,获取相应的符号。

GetDeclaredSymbol(SemanticModel, SwitchLabelSyntax, CancellationToken)

给定开关标签语法,获取相应的标签符号。

GetDeclaredSymbol(SemanticModel, TupleElementSyntax, CancellationToken)

给定元组元素语法时,获取相应的符号。

GetDeclaredSymbol(SemanticModel, TupleExpressionSyntax, CancellationToken)

给定元组表达式的语法节点,获取元组类型符号。

GetDeclaredSymbol(SemanticModel, TypeParameterSyntax, CancellationToken)

给定类型参数声明 (字段或方法) ,获取相应的符号

GetDeclaredSymbol(SemanticModel, UsingDirectiveSyntax, CancellationToken)

给定 using 声明后,将获取引入的 using 别名的相应符号。

GetDeclaredSymbol(SemanticModel, VariableDeclaratorSyntax, CancellationToken)

给定变量声明符语法时,获取相应的符号。

GetDeconstructionInfo(SemanticModel, AssignmentExpressionSyntax)
GetDeconstructionInfo(SemanticModel, ForEachVariableStatementSyntax)
GetElementConversion(ISpreadOperation)

从此 ISpreadOperation获取基础元素Conversion信息。

GetFirstDirective(SyntaxNode, Func<DirectiveTriviaSyntax,Boolean>)

获取此节点根目录树的第一个指令。

GetForEachStatementInfo(SemanticModel, CommonForEachStatementSyntax)
GetForEachStatementInfo(SemanticModel, ForEachStatementSyntax)
GetInConversion(ICompoundAssignmentOperation)

从此 ICompoundAssignmentOperation获取基础Conversion信息。 在将 运算符应用于此转换的结果和 Value之前,将应用此转换。

GetIndexerGroup(SemanticModel, ExpressionSyntax, CancellationToken)

返回可使用给定表达式作为接收器调用的可访问的非隐藏索引器的列表。

GetLastDirective(SyntaxNode, Func<DirectiveTriviaSyntax,Boolean>)

获取此节点根目录树的最后一个指令。

GetMemberGroup(SemanticModel, AttributeSyntax, CancellationToken)
GetMemberGroup(SemanticModel, ConstructorInitializerSyntax, CancellationToken)
GetMemberGroup(SemanticModel, ExpressionSyntax, CancellationToken)
GetOutConversion(ICompoundAssignmentOperation)

从此 ICompoundAssignmentOperation获取基础Conversion信息。 在将结果分配给 Target之前,在应用 运算符之后应用此转换。

GetQueryClauseInfo(SemanticModel, QueryClauseSyntax, CancellationToken)

获取与查询子句关联的语义信息。

GetSpeculativeAliasInfo(SemanticModel, Int32, IdentifierNameSyntax, SpeculativeBindingOption)

在指定位置的上下文中绑定名称,并查看它是否解析为别名。 如果已返回,则返回与之对应的 AliasSymbol。 否则,返回 null。

GetSpeculativeConversion(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)
GetSpeculativeSymbolInfo(SemanticModel, Int32, AttributeSyntax)

在指定位置的上下文中绑定 属性,并获取类型、符号和诊断等语义信息。 此方法用于获取有关源代码中实际未出现的特性的语义信息。

GetSpeculativeSymbolInfo(SemanticModel, Int32, ConstructorInitializerSyntax)

在指定位置的上下文中绑定构造函数初始值设定项,并获取类型、符号和诊断等语义信息。 此方法用于获取有关实际上未出现在源代码中的构造函数初始值设定项的语义信息。

注意:这仅适用于已存在构造函数初始值设定项的位置。

GetSpeculativeSymbolInfo(SemanticModel, Int32, CrefSyntax, SpeculativeBindingOption)

在指定位置的上下文中绑定 CrefSyntax 表达式并获取符号信息。 此方法用于获取有关实际上未出现在源代码中的表达式的符号信息。

GetSpeculativeSymbolInfo(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)

在指定位置的上下文中绑定表达式并获取符号信息。 此方法用于获取有关实际上未出现在源代码中的表达式的符号信息。

GetSpeculativeSymbolInfo(SemanticModel, Int32, PrimaryConstructorBaseTypeSyntax)

在指定位置的上下文中绑定构造函数初始值设定项,并获取有关符号的语义信息。 此方法用于获取有关实际上未出现在源代码中的构造函数初始值设定项的语义信息。

注意:这仅适用于已存在构造函数初始值设定项的位置。 PrimaryConstructorBaseTypeSyntax.

GetSpeculativeTypeInfo(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)

在指定位置的上下文中绑定表达式并获取类型信息。 此方法用于获取有关源代码中实际未显示的表达式的类型信息。

GetSymbolInfo(SemanticModel, AttributeSyntax, CancellationToken)

返回 () 在程序中绑定到的给定属性语法(如果有)的符号。

GetSymbolInfo(SemanticModel, ConstructorInitializerSyntax, CancellationToken)

返回 () 在程序中绑定到的给定构造函数初始值设定项语法的符号(如果有)。

GetSymbolInfo(SemanticModel, CrefSyntax, CancellationToken)

获取与文档注释 cref 关联的语义信息。

GetSymbolInfo(SemanticModel, ExpressionSyntax, CancellationToken)

返回 () 在程序中绑定到的给定表达式语法(如果有)的符号。

此方法永远不会返回 AliasSymbol。 别名引用的内容将改为返回。 若要获取有关别名的信息,请调用 GetAliasInfo。

如果在表达式“new C (...) ”中绑定类型名称 C,则当重载解析) 失败时,将返回绑定到 的实际构造函数 (或所有构造函数。 只要 C 明确绑定到具有构造函数的单个类型,就会出现这种情况。 如果 C 不明确绑定到多个类型,或 C 绑定到静态类,则返回类型 () 。

GetSymbolInfo(SemanticModel, OrderingSyntax, CancellationToken)

获取 orderby 查询子句中 ordering 子句的语义信息。

GetSymbolInfo(SemanticModel, PrimaryConstructorBaseTypeSyntax, CancellationToken)

返回 () 在程序中绑定到的给定构造函数初始值设定项语法的符号(如果有)。

GetSymbolInfo(SemanticModel, SelectOrGroupClauseSyntax, CancellationToken)

获取与 select 或 group 子句关联的语义信息。

GetTypeInfo(SemanticModel, AttributeSyntax, CancellationToken)

获取有关特性的类型信息。

GetTypeInfo(SemanticModel, ConstructorInitializerSyntax, CancellationToken)

获取有关构造函数初始值设定项的类型信息。

GetTypeInfo(SemanticModel, ExpressionSyntax, CancellationToken)

获取有关表达式的类型信息。

GetTypeInfo(SemanticModel, SelectOrGroupClauseSyntax, CancellationToken)
Insert(SyntaxTokenList, Int32, SyntaxToken[])

在列表中的指定索引处插入一个或多个标记。

IsContextualKeyword(SyntaxToken)
IsKeyword(SyntaxToken)
IsReservedKeyword(SyntaxToken)
IsVerbatimIdentifier(SyntaxToken)
IsVerbatimStringLiteral(SyntaxToken)
Kind(SyntaxNode)

SyntaxKindRawKind 属性返回 。SyntaxNode

Kind(SyntaxNodeOrToken)

SyntaxKindRawKind 属性返回 。SyntaxNode

Kind(SyntaxToken)

SyntaxKindRawKind 属性返回 。SyntaxToken

Kind(SyntaxTrivia)

SyntaxKindRawKind 属性返回 。SyntaxTrivia

ReplaceTrivia(SyntaxToken, IEnumerable<SyntaxTrivia>, Func<SyntaxTrivia,SyntaxTrivia,SyntaxTrivia>)

创建一个新令牌,其中指定的旧琐事已替换为计算的新琐事。

ReplaceTrivia(SyntaxToken, SyntaxTrivia, SyntaxTrivia)

创建一个新令牌,其中指定的旧琐事替换为新的琐事。 旧琐事可能出现在令牌的前导或尾随琐事中。

TryGetSpeculativeSemanticModel(SemanticModel, Int32, ArrowExpressionClauseSyntax, SemanticModel)

获取一个 SemanticModel 对象,该对象与此源代码中未出现的表达式正文相关联。 这可用于获取有关未出现在源代码中的表达式主体子部分的详细语义信息。

TryGetSpeculativeSemanticModel(SemanticModel, Int32, AttributeSyntax, SemanticModel)

获取与未在此源代码中显示的属性关联的 SemanticModel 对象。 这可用于获取有关未出现在源代码中的属性的子部分的详细语义信息。

TryGetSpeculativeSemanticModel(SemanticModel, Int32, ConstructorInitializerSyntax, SemanticModel)

获取一个 SemanticModel 对象,该对象与未出现在此源代码中的构造函数初始值设定项相关联。 这可用于获取有关未出现在源代码中的构造函数初始值设定项的子部分的详细语义信息。

注意:这仅适用于已存在构造函数初始值设定项的位置。

TryGetSpeculativeSemanticModel(SemanticModel, Int32, CrefSyntax, SemanticModel)

获取与未在此源代码中显示的 cref 语法节点关联的 SemanticModel 对象。 这可用于获取有关未出现在源代码中的 cref 语法子部分的详细语义信息。

TryGetSpeculativeSemanticModel(SemanticModel, Int32, EqualsValueClauseSyntax, SemanticModel)

获取一个 SemanticModel 对象,该对象与未在此源代码中显示的初始值设定项相关联。 这可用于获取有关未出现在源代码中的字段初始值设定项或默认参数值的子部分的详细语义信息。

TryGetSpeculativeSemanticModel(SemanticModel, Int32, PrimaryConstructorBaseTypeSyntax, SemanticModel)

获取一个 SemanticModel 对象,该对象与未出现在此源代码中的构造函数初始值设定项相关联。 这可用于获取有关未出现在源代码中的构造函数初始值设定项的子部分的详细语义信息。

注意:这仅适用于已存在构造函数初始值设定项的位置。

TryGetSpeculativeSemanticModel(SemanticModel, Int32, StatementSyntax, SemanticModel)

获取一个 SemanticModel 对象,该对象与未在此源代码中出现的语句相关联。 这可用于获取有关未出现在源代码中的语句子部分的详细语义信息。

TryGetSpeculativeSemanticModel(SemanticModel, Int32, TypeSyntax, SemanticModel, SpeculativeBindingOption)

获取一个 SemanticModel 对象,该对象与此源代码中未出现的类型语法节点相关联。 这可用于获取有关未出现在源代码中的类型语法子部分的详细语义信息。

TryGetSpeculativeSemanticModelForMethodBody(SemanticModel, Int32, AccessorDeclarationSyntax, SemanticModel)

获取一个 SemanticModel 对象,该对象与此源代码中未出现的方法主体相关联。 给定 position 必须位于此 SemanticModel 的根语法节点的现有方法主体内。 在此现有方法主体中声明的局部变量和标签不被视为在推理方法主体的范围内。

TryGetSpeculativeSemanticModelForMethodBody(SemanticModel, Int32, BaseMethodDeclarationSyntax, SemanticModel)

获取一个 SemanticModel 对象,该对象与此源代码中未出现的方法主体相关联。 给定 position 必须位于此 SemanticModel 的根语法节点的现有方法主体内。 在此现有方法主体中声明的局部变量和标签不被视为在推理方法主体的范围内。

VarianceKindFromToken(SyntaxToken)

适用于