Microsoft.CodeAnalysis.Operations 命名空间
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
类
OperationExtensions | |
OperationVisitor |
表示 IOperation 仅访问传入其 Visit 方法的单个 IOperation 的访问者。 |
OperationVisitor<TArgument,TResult> |
表示仅 IOperation 访问传入其 Visit 方法的单个 IOperation 以及参数 |
OperationWalker |
表示一个 , OperationVisitor 它以深度优先顺序将访问每个 IOperation 及其子 IOperation 节点的整个 IOperation 树降序。 |
OperationWalker<TArgument> |
表示一个 , OperationVisitor<TArgument,TResult> 它以深度优先顺序将访问每个 IOperation 及其子 IOperation 节点的整个 IOperation 树降序。 返回 Null。 |
结构
CommonConversion |
表示转换中与语言无关的公共元素。 |
接口
IAddressOfOperation |
表示一个操作,该操作通过获取引用的地址来创建指针值。 当前用法:表达式 (1) C# 地址 |
IAnonymousFunctionOperation |
表示匿名函数操作。 当前用法: (1) C# lambda 表达式。 (2) VB 匿名委托表达式。 |
IAnonymousObjectCreationOperation |
表示匿名对象的创建。 当前用法: (1) C# “new { ... }” 表达式 (2) VB “New With { ... }” 表达式 |
IArgumentOperation |
表示方法调用的参数。 当前用法:将 1) C# 参数 (调用表达式、对象创建表达式等 (2 个) VB 参数转换为调用表达式、对象创建表达式等。 |
IArrayCreationOperation |
表示数组实例的创建。 当前用法: (1) C# 数组创建表达式。 (2) VB 数组创建表达式。 |
IArrayElementReferenceOperation |
表示对数组元素的引用。 当前用法: (1) C# 数组元素引用表达式。 (2) VB 数组元素引用表达式。 |
IArrayInitializerOperation |
表示数组实例的初始化。 当前用法: (1) C# 数组初始值设定项。 (2) VB 数组初始值设定项。 |
IAssignmentOperation |
表示分配的基接口。 当前用法: (1) C# 简单、复合和析构赋值表达式。 (2) VB 简单和复合赋值表达式。 |
IAttributeOperation |
表示属性的应用。 当前用法: (1) C# 属性应用程序。 (2) VB 属性应用程序。 |
IAwaitOperation |
表示 await 操作。 当前用法: (1) C# await 表达式。 (2) VB await 表达式。 |
IBinaryOperation |
表示具有两个操作数和一个二元运算符的运算,该运算符生成非 null 类型的结果。 当前用法: (1) C# 二元运算符表达式。 (2) VB 二元运算符表达式。 |
IBinaryPatternOperation |
表示二进制 (“and”或“or”) 模式。 当前用法: (1) C# “and” 和 “or” 模式。 |
IBlockOperation |
表示包含一系列操作和本地声明的块。 当前用法: (1) C# “{ ... }” 块语句。 (方法主体和其他块范围语句的 2) VB 隐式块语句。 |
IBranchOperation |
表示分支操作。 当前用法: (1) C# goto、break 或 continue 语句。 (2) VB GoTo、Exit ***或 Continue *** 语句。 |
ICaseClauseOperation |
表示 case 子句。 当前用法: (1) C# case 子句。 (2) VB Case 子句。 |
ICatchClauseOperation |
表示 catch 子句。 当前用法: (1) C# catch 子句。 (2) VB Catch 子句。 |
ICoalesceAssignmentOperation |
表示具有目标和条件计算值的合并赋值运算: (1) Target 计算 null。 如果为 null, Value 则计算并分配给目标。 如果 Target 为 null,则 (2 个) Value 有条件地计算,并将结果分配给 Target。 整个表达式的结果为Target ,它只计算一次。
当前用法: (1) C# null 合并赋值操作 |
ICoalesceOperation |
表示具有两个操作数的合并运算: (1) Value,这是无条件计算的第一个操作数,如果非 null,则为运算的结果。 (2) WhenNull,这是按条件计算的第二个操作数,如果 Value 为 null,则为运算的结果。 当前用法: (1) C# null 合并表达式“Value ?? WhenNull”。 (2) VB 二进制条件表达式“If (Value, WhenNull) ”。 |
ICollectionElementInitializerOperation |
用于表示集合元素初始值设定项的已过时接口。 它已根据需要替换为 IInvocationOperation 和 IDynamicInvocationOperation。 当前用法:无。 此 API 已过时,支持 IInvocationOperation 和 IDynamicInvocationOperation。 |
ICollectionExpressionOperation |
表示集合表达式。 当前用法: (1) C# 集合表达式。 |
ICompoundAssignmentOperation |
表示一个复合赋值,该赋值使用二进制运算的结果改变目标。 当前用法: (1) C# 复合赋值表达式。 (2) VB 复合赋值表达式。 |
IConditionalAccessInstanceOperation |
表示 中 WhenNotNull有条件访问的操作的值。
对于形式的 当前用法: (1) C# 条件访问实例表达式。 (2) VB 条件访问实例表达式。 |
IConditionalAccessOperation |
表示有条件访问的操作。 请注意, IConditionalAccessInstanceOperation 用于引用 中的 WhenNotNull值Operation。 当前用法: (1) C# 条件访问表达式 (?或?。运算符) 。 (2) VB 条件访问表达式 (?或?。运算符) 。 |
IConditionalOperation |
表示条件操作: (1 个 Condition 要测试) , (2 个) WhenTrue 操作在 为 true 时 Condition 执行, (3 个) WhenFalse 操作在 为 false 时 Condition 执行。 当前用法: (1) C# 三元表达式“a? b: c“ 和 if 语句。 (2) VB 三元表达式“if (a, b, c) ”和 If Else 语句。 |
IConstantPatternOperation |
表示具有常量值的模式。 当前用法: (1) C# 常量模式。 |
IConstructorBodyOperation |
表示构造函数方法主体操作。 当前用法: (构造函数声明的 1) C# 方法主体 |
IConversionOperation |
表示类型转换。 当前用法: (1) C# 转换表达式。 (2) VB 转换表达式。 |
IDeclarationExpressionOperation |
表示声明表达式操作。 与正则变量声明 IVariableDeclaratorOperation 和 IVariableDeclarationOperation不同,此操作表示声明变量的“表达式”。 当前用法: (1) C# 声明表达式。 例如, () “var (x, y) ”是带有变量 x 和 y 的析构声明表达式。 (b) “ (var x, var y) ”是具有两个声明表达式的元组表达式。 (c) “M (out var x) ;”是具有 out“var x”声明表达式的调用表达式。 |
IDeclarationPatternOperation |
表示声明符号的模式。 当前用法: (1) C# 声明模式。 |
IDeconstructionAssignmentOperation |
表示具有析构的赋值。 当前用法: (1) C# 析构赋值表达式。 |
IDefaultCaseClauseOperation |
表示默认事例子句。 当前用法: (1) C# 默认子句。 (2) VB Case Else 子句。 |
IDefaultValueOperation |
表示默认值操作。 当前用法: (1) C# 默认值表达式。 |
IDelegateCreationOperation |
表示委托创建。 每当创建新委托时,会创建此权限。 当前用法: (1) C# 委托创建表达式。 (2) VB 委托创建表达式。 |
IDiscardOperation |
表示放弃操作。 当前用法:C# 放弃表达式 |
IDiscardPatternOperation |
表示放弃模式。 当前用法:C# 放弃模式 |
IDynamicIndexerAccessOperation |
表示动态绑定的索引器访问。 当前用法: (1) C# 动态索引器访问表达式。 |
IDynamicInvocationOperation |
表示动态绑定的调用。
当前用法: (1) C# 动态调用表达式。
(2) C# 动态集合元素初始值设定项。
例如,在以下集合初始值设定项中: |
IDynamicMemberReferenceOperation |
表示对动态绑定的类、结构或模块成员的引用。 当前用法: (1) C# 动态成员引用表达式。 (2) VB 后期绑定成员引用表达式。 |
IDynamicObjectCreationOperation |
表示使用动态绑定构造函数创建的对象。 当前用法: (1) 具有动态参数的 C# “new” 表达式 () 。 (2) VB 后期绑定的“New”表达式。 |
IEmptyOperation |
表示空操作或无操作操作。 当前用法: (1) C# 空语句。 |
IEndOperation |
表示突然停止代码执行的操作。 当前用法: (1) VB 结束语句。 |
IEventAssignmentOperation |
表示事件的绑定。 当前用法: (1) C# 事件分配表达式。 (2) VB 添加/删除处理程序语句。 |
IEventReferenceOperation |
表示对事件的引用。 当前用法: (1) C# 事件引用表达式。 (2) VB 事件引用表达式。 |
IExpressionStatementOperation |
表示一个操作,该操作删除生成的值和基础包装 Operation的类型。 当前用法: (1) C# 表达式语句。 (2) VB 表达式语句。 |
IFieldInitializerOperation |
表示字段的初始化。 当前用法: (1) 具有相等值子句的 C# 字段初始值设定项。 (2) VB 字段 (具有相等值子句或 AsNew 子句的) 初始值设定项。 可以使用 VB 中的 AsNew 子句初始化多个字段。 |
IFieldReferenceOperation |
表示对某字段的引用。 当前用法: (1) C# 字段引用表达式。 (2) VB 字段引用表达式。 |
IForEachLoopOperation |
表示每个循环的 。 当前用法: (1) C# “foreach” 循环语句 (2) VB “For Each” 循环语句 |
IForLoopOperation |
表示 for 循环。 当前用法: (1) C# for“循环语句 |
IForToLoopOperation |
表示 for to 循环,其中包含循环控制变量以及控制变量的初始值、限制值和步长值。 当前用法: (1) VB 'for ...自。。。Step' 循环语句 |
IFunctionPointerInvocationOperation |
表示函数指针的调用。 |
IImplicitIndexerReferenceOperation |
表示对非数组类型的隐式 System.Index 或 System.Range 索引器的引用。 当前用法: (1) C# 隐式 System.Index 或 System.Range 索引器引用表达式。 |
IIncrementOrDecrementOperation |
表示 Increment 或 Decrement 操作。 请注意,此操作与 不同, IUnaryOperation 因为它会改变 , Target而一元运算符表达式不会改变其操作数。 当前用法: (1) C# 递增表达式或递减表达式。 |
IInlineArrayAccessOperation |
表示对内联数组类型的元素引用或切片操作。 当前用法: (1) C# 内联数组访问。 |
IInstanceReferenceOperation |
表示对实例的隐式/显式引用。 当前用法: (1) C# 此或基表达式。 (2) VB Me、MyClass 或 MyBase 表达式。 (3) C# 对象或集合或“with”表达式初始值设定项。 (4) VB With 语句、对象或集合初始值设定项。 |
IInterpolatedStringAdditionOperation |
表示要转换为内插字符串处理程序类型的多个内插字符串文本的添加。 |
IInterpolatedStringAppendOperation |
表示对 AppendLiteral 或 AppendFormatted 的调用,作为内插字符串处理程序转换的一部分。 |
IInterpolatedStringContentOperation |
表示内插字符串的组成部分。 当前用法: (1) C# 内插字符串内容。 (2) VB 内插字符串内容。 |
IInterpolatedStringHandlerArgumentPlaceholderOperation |
表示方法调用、索引器访问或构造函数调用的参数,该调用将创建包含 IInterpolatedStringHandlerCreationOperation |
IInterpolatedStringHandlerCreationOperation |
表示转换为自定义内插字符串处理程序类型的内插字符串。 |
IInterpolatedStringOperation |
表示内插字符串。 当前用法: (1) C# 内插字符串表达式。 (2) VB 内插字符串表达式。 |
IInterpolatedStringTextOperation |
表示内插字符串操作的构成字符串文本部分。 当前用法: (1) C# 内插字符串文本。 (2) VB 内插字符串文本。 |
IInterpolationOperation |
表示内插字符串操作的构成内插部分。 当前用法: (1) C# 内插部分。 (2) VB 内插部分。 |
IInvalidOperation |
表示具有一个或多个子操作的无效操作。 当前用法: (1) C# 无效表达式或无效语句。 (2) VB 无效表达式或无效语句。 |
IInvocationOperation |
表示方法的调用。
当前用法: (1) C# 方法调用表达式。
(2) C# 集合元素初始值设定项。
例如,在以下集合初始值设定项中, |
IIsPatternOperation |
表示一个操作,该操作测试值是否与特定模式匹配。 当前用法: (1) C# 是模式表达式。 例如,“x is int i”。 |
IIsTypeOperation |
表示一个操作,该操作测试值是否为特定类型。 当前用法: (1) C# “is” 运算符表达式。 (2) VB“TypeOf”和“TypeOf IsNot”表达式。 |
ILabeledOperation |
表示具有标签的操作。 当前用法: (1) C# 标记语句。 (2) VB 标签语句。 |
IListPatternOperation |
表示 C# 列表模式。 |
ILiteralOperation |
表示文本文本数字、字符串等。 当前用法: (1) C# 文本表达式。 (2) VB 文本表达式。 |
ILocalFunctionOperation |
表示方法中定义的本地函数。 当前用法: (1) C# 本地函数语句。 |
ILocalReferenceOperation |
表示对声明的局部变量的引用。 当前用法: (1) C# 本地引用表达式。 (2) VB 本地引用表达式。 |
ILockOperation |
表示 Body 在锁定 时执行的操作的 LockedValue。 当前用法: (1) C# lock 语句。 (2) VB SyncLock 语句。 |
ILoopOperation |
表示循环操作。 当前用法: (1) C# “while”、“for”、“for”、“foreach”和“do”循环语句 (2 个 VB“While”、“ForTo”、“ForEach”、“Do While”和“Do Until”循环语句) VB“While”、“ForTo”、“ForEach”、“Do While”和“Do Until”循环语句 |
IMemberInitializerOperation |
表示使用嵌套对象或集合初始值设定项的对象初始值设定项中成员的初始化。 当前用法: (1) C# 嵌套成员初始值设定项表达式。 例如,给定对象创建具有初始值设定项“new Class () { X = x,y, 3 },Z = { X = z } }”的对象,Y 和 Z 的成员初始值设定项,即“Y = { x, y, 3 }”和“Z = { X = z }”是此操作表示的嵌套成员初始值设定项。 |
IMemberReferenceOperation |
表示对类、结构或接口成员的引用。 当前用法: (1) C# 成员引用表达式。 (2) VB 成员引用表达式。 |
IMethodBodyBaseOperation |
表示方法正文操作。 当前用法: (1) C# 方法正文 |
IMethodBodyOperation |
表示方法正文操作。 当前用法: (非构造函数的 1) C# 方法主体 |
IMethodReferenceOperation |
表示对方法的引用,而不是作为调用的目标。 当前用法: (1) C# 方法引用表达式。 (2) VB 方法引用表达式。 |
INameOfOperation |
表示获取名称的 Argument 字符串值的操作。 当前用法:表达式 (1) C# 名称。 (2) VB NameOf 表达式。 |
INegatedPatternOperation |
表示否定模式。 当前用法: (1) C# 反模式。 |
IObjectCreationOperation |
表示对象实例的创建。 当前用法: (1) C# 新表达式。 (2) VB 新表达式。 |
IObjectOrCollectionInitializerOperation |
表示创建对象或集合的初始化。 当前用法: (1) C# 对象或集合初始值设定项表达式。 (2) VB 对象或集合初始值设定项表达式。 例如,对象创建“新类 () { X = x }”中的对象初始值设定项“{ X = x }”,集合创建“new MyList () { x, y, 3 }”中的集合初始值设定项“{ x, y, 3 }”。 |
IOmittedArgumentOperation |
表示在调用中省略的参数值。 当前用法:调用表达式中 (1) VB 省略参数。 |
IParameterInitializerOperation |
表示在声明点初始化参数。 当前用法: (1) 具有相等值子句的 C# 参数初始值设定项。 (2) 具有相等值子句的 VB 参数初始值设定项。 |
IParameterReferenceOperation |
表示对参数的引用。 当前用法: (1) C# 参数引用表达式。 (2) VB 参数引用表达式。 |
IParenthesizedOperation |
表示括号化运算。 当前用法: (1) VB 括号表达式。 |
IPatternCaseClauseOperation |
表示具有模式和可选保护操作的 case 子句。 当前用法: (1) C# 模式 case 子句。 |
IPatternOperation |
表示模式匹配操作。 当前用法: (1) C# 模式。 |
IPropertyInitializerOperation |
表示属性的初始化。 当前用法: (1) 具有相等值子句的 C# 属性初始值设定项。 (2) 具有相等值子句或 AsNew 子句的 VB 属性初始值设定项。 可以使用 VB 中的 AsNew 子句使用“WithEvents”声明初始化多个属性。 |
IPropertyReferenceOperation |
表示对属性的引用。 当前用法: (1) C# 属性引用表达式。 (2) VB 属性引用表达式。 |
IPropertySubpatternOperation |
表示属性子模式的元素,该元素标识要匹配的成员以及要与之匹配的模式。 |
IRaiseEventOperation |
表示用于引发事件的操作。 当前用法: (1) VB 引发事件语句。 |
IRangeCaseClauseOperation |
表示一个 case 子句,其中包含要比较的值范围。 当前用法: (1) VB 范围 case 子句,形式为“Case x To y”。 |
IRangeOperation |
表示范围操作。 当前用法: (1) C# 范围表达式 |
IRecursivePatternOperation |
表示 C# 递归模式。 |
IReDimClauseOperation |
表示 为单个数组变量重新分配存储空间的 IReDimOperation 的单个子句。 当前用法: (1) VB ReDim 子句。 |
IReDimOperation |
表示为数组变量重新分配存储空间的 ReDim 操作。 当前用法: (1) VB ReDim 语句。 |
IRelationalCaseClauseOperation |
表示一个 case 子句,其中包含用于比较的自定义关系运算符。 当前用法: (1) VB 关系 case 子句,形式为“Case Is op x”。 |
IRelationalPatternOperation |
表示使用关系运算符将输入与常量值进行比较的模式。 当前用法: (1) C# 关系模式。 |
IReturnOperation |
表示来自 方法的返回值(具有可选返回值)。 当前用法: (1) C# 返回语句和 yield 语句。 (2) VB Return 语句。 |
ISimpleAssignmentOperation |
表示简单的赋值操作。 当前用法: (1) C# 简单赋值表达式。 (2) VB 简单赋值表达式。 |
ISingleValueCaseClauseOperation |
表示具有单个值以供比较的 case 子句。 当前用法: (1) C# case 子句的形式“case x” (2) 形式“Case x”的 VB case 子句。 |
ISizeOfOperation |
表示用于计算给定类型大小的操作。 当前用法:表达式 (1) C# 大小。 |
ISlicePatternOperation |
表示 C# 切片模式。 |
ISpreadOperation |
表示集合表达式分布元素。 当前用法: (1) C# 分布元素。 |
IStopOperation |
表示停止或暂停代码执行的操作。 当前用法: (1) VB Stop 语句。 |
ISwitchCaseOperation |
表示一个 switch case 节,其中包含要匹配的一个或多个 case 子句,以及要在该节中执行的一个或多个操作。 当前用法: (1) C# 开关节,用于一个或多个 case 子句和要执行的语句集。 (2) VB case 块,其中包含一个或多个 case 子句的 case 语句以及要执行的语句集。 |
ISwitchExpressionArmOperation |
表示 switch 表达式的一个分支。 |
ISwitchExpressionOperation |
表示开关表达式。 当前用法: (1) C# 开关表达式。 |
ISwitchOperation |
表示具有要打开的值和开关事例的开关操作。 当前用法: (1) C# switch 语句。 (2) VB Select Case 语句。 |
ISymbolInitializerOperation |
表示字段、属性、参数或局部变量声明的初始值设定项。 当前用法: (1) C# 字段、属性、参数或局部变量初始值设定项。 (2) VB 字段 () 、属性、参数或局部变量初始值设定项。 |
IThrowOperation |
表示引发异常的操作。 当前用法: (1) C# 引发表达式。 (2) C# throw 语句。 (2) VB Throw 语句。 |
ITranslatedQueryOperation |
表示取消滚动/降低的查询操作。 例如,对于 C# 查询表达式“from x in set where x.Name != null select x.Name”, 操作树具有以下形状:ITranslatedQueryExpression IInvocationExpression (“select x.Name”调用,) IInvocationExpression (“where x.Name != null”) IInvocationExpression (“From”调用“from x in set”) 当前用法: (1) C# 查询表达式。 (2) VB 查询表达式。 |
ITryOperation |
表示具有正文、catch 子句和 finally 处理程序的异常处理代码的 try 操作。 当前用法: (1) C# try 语句。 (2) VB Try 语句。 |
ITupleBinaryOperation |
表示返回布尔类型的两个操作数的比较。 当前用法: (1) C# 元组二进制运算符表达式。 |
ITupleOperation |
表示具有一个或多个元素的元组。 当前用法: (1) C# 元组表达式。 (2) VB 元组表达式。 |
ITypeOfOperation |
表示为给定 TypeOperand的 获取Type的操作。 当前用法: (1) C# 类型表达式。 (2) VB GetType 表达式。 |
ITypeParameterObjectCreationOperation |
表示类型参数对象的创建,即新 T () ,其中 T 是具有新约束的类型参数。 当前用法: (1) C# 类型参数对象创建表达式。 (2) VB 类型参数对象创建表达式。 |
ITypePatternOperation |
表示将输入与给定类型进行比较的模式。 当前用法: (1) C# 类型模式。 |
IUnaryOperation |
表示具有一个操作数和一元运算符的运算。 当前用法: (1) C# 一元运算表达式。 (2) VB 一元运算表达式。 |
IUsingDeclarationOperation |
表示使用变量声明,范围跨越父 IBlockOperation。 当前用法: (1) C# 使用声明 (1) C# 异步使用声明 |
IUsingOperation |
表示 Body 在使用可释放 Resources的 时执行的操作的 。 当前用法: (1) C# using 语句。 (2) VB Using 语句。 |
IUtf8StringOperation |
表示字符串的 UTF-8 编码字节表示形式。 当前用法: (1) C# UTF-8 字符串文本表达式。 |
IVariableDeclarationGroupOperation |
表示变量声明语句。 |
IVariableDeclarationOperation |
表示声明多个单个变量的声明符。 |
IVariableDeclaratorOperation |
表示单个变量声明符和初始值设定项。 |
IVariableInitializerOperation |
表示局部变量的初始化。 当前用法: (1) 具有相等值子句的 C# 局部变量初始值设定项。 (2) 具有相等值子句或 AsNew 子句的 VB 局部变量初始值设定项。 |
IWhileLoopOperation |
表示 while 或 do while 循环。 当前用法: (1) C#“while”和“do while”循环语句。 (2) VB“While”、“Do While”和“Do Until”循环语句。 |
IWithOperation |
表示对象实例的克隆。 当前用法:使用表达式 (1) C#。 |
枚举
ArgumentKind |
参数类型。 |
BinaryOperatorKind |
二元运算符的类型。 |
BranchKind |
的分支类型 IBranchOperation |
CaseKind |
事例类型。 |
InstanceReferenceKind |
的 IInstanceReferenceOperation引用类型。 |
InterpolatedStringArgumentPlaceholderKind |
的 IInterpolatedStringHandlerArgumentPlaceholderOperation占位符类型。 |
LoopKind |
循环操作的类型。 |
UnaryOperatorKind |
一元运算符的类型 |