ExpressionType 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
介绍表达式树节点的节点类型。
public enum class ExpressionType
public enum ExpressionType
type ExpressionType =
Public Enum ExpressionType
- 继承
字段
Add | 0 | 针对数字操作数的加法运算,例如 |
AddAssign | 63 | 对数字操作数不执行溢出检查的加法复合赋值运算,例如 |
AddAssignChecked | 74 | 对数字操作数执行溢出检查的加法复合赋值运算,例如 |
AddChecked | 1 | 对数字操作数执行溢出检查的加法运算,例如 |
And | 2 | 按位或逻辑 |
AndAlso | 3 | 条件 |
AndAssign | 64 | 按位或逻辑 |
ArrayIndex | 5 | 一维数组中的索引操作,例如 |
ArrayLength | 4 | 获取一维数组长度的操作,例如 |
Assign | 46 | 赋值操作,例如 |
Block | 47 | 表达式块。 |
Call | 6 | 方法调用,如 表达式中的 |
Coalesce | 7 | 表示 Null 合并操作的节点,例如 |
Conditional | 8 | 条件操作,例如 |
Constant | 9 | 常数值。 |
Convert | 10 | 强制转换或转换操作,例如 |
ConvertChecked | 11 | 强制转换或转换操作,例如 |
DebugInfo | 48 | 调试信息。 |
Decrement | 49 | 一元递减运算,例如 |
Default | 51 | 默认值。 |
Divide | 12 | 数值操作数的除法运算,如 |
DivideAssign | 65 | 数值操作数的除法复合赋值运算,例如 |
Dynamic | 50 | 动态操作。 |
Equal | 13 | 表示相等比较的节点,例如 |
ExclusiveOr | 14 | 按位或逻辑 |
ExclusiveOrAssign | 66 | 按位或逻辑 |
Extension | 52 | 扩展表达式。 |
Goto | 53 | “转到”表达式,例如 |
GreaterThan | 15 | “大于”比较,例如 |
GreaterThanOrEqual | 16 | “大于或等于”比较,例如 |
Increment | 54 | 一元递增运算,例如 |
Index | 55 | 索引运算或访问使用参数的属性的运算。 |
Invoke | 17 | 调用委托或 lambda 表达式的操作,例如 |
IsFalse | 84 |
|
IsTrue | 83 |
|
Label | 56 | 标签。 |
Lambda | 18 | Lambda 表达式,例如 |
LeftShift | 19 | 按位左移运算,例如 |
LeftShiftAssign | 67 | 按位左移复合赋值,例如 |
LessThan | 20 | “小于”比较,例如 |
LessThanOrEqual | 21 | “小于或等于”比较,例如 |
ListInit | 22 | 一种操作,用于创建新 IEnumerable 对象并从元素列表(如 |
Loop | 58 | 循环,例如 |
MemberAccess | 23 | 从字段或属性(如 ) |
MemberInit | 24 | 一种操作,用于创建新对象并初始化其一个或多个成员,例如 |
Modulo | 25 | 算术余数运算,例如 |
ModuloAssign | 68 | 算术余数复合赋值运算,例如 |
Multiply | 26 | 对于数值操作数,不进行溢出检查的乘法运算,如 |
MultiplyAssign | 69 | 一个乘法复合赋值运算,例如 |
MultiplyAssignChecked | 75 | 对数值操作数进行溢出检查的乘法复合赋值运算,如 |
MultiplyChecked | 27 | 对数值操作数进行溢出检查的乘法运算,如 |
Negate | 28 | 算术求反运算,例如 |
NegateChecked | 30 | 具有溢出检查的算术求反运算,例如 |
New | 31 | 调用构造函数以创建新对象的操作,例如 |
NewArrayBounds | 33 | 创建一个新数组的操作,其中指定了每个维度的边界,例如 |
NewArrayInit | 32 | 一种操作,用于创建新的一维数组,并从元素列表(如 |
Not | 34 | 按位求补运算或逻辑求反运算。 在 C# 中,对于整型类型,它等效于 ;对于布尔值,它等效 |
NotEqual | 35 | 不相等比较,例如 |
OnesComplement | 82 | 一个补码运算,例如 |
Or | 36 | 按位或逻辑 |
OrAssign | 70 | 按位或逻辑 |
OrElse | 37 | 短路条件 |
Parameter | 38 | 对在表达式上下文中定义的参数或变量的引用。 有关详细信息,请参阅 ParameterExpression。 |
PostDecrementAssign | 80 | 一元后缀递减,例如 |
PostIncrementAssign | 79 | 一元后缀增量,例如 |
Power | 39 | 将数字提升到幂的数学运算,例如 |
PowerAssign | 71 | 将数字提高到幂的复合赋值运算,例如 |
PreDecrementAssign | 78 | 一元前缀递减,例如 |
PreIncrementAssign | 77 | 一元前缀增量,例如 |
Quote | 40 | 具有类型为 Expression 的常量值的表达式。 Quote 节点可包含对参数的引用,这些参数在该节点表示的表达式的上下文中定义。 |
RightShift | 41 | 按位右移运算,例如 |
RightShiftAssign | 72 | 按位右移复合赋值运算,例如 |
RuntimeVariables | 57 | 运行时变量的列表。 有关详细信息,请参阅 RuntimeVariablesExpression。 |
Subtract | 42 | 对数值操作数执行减法运算,例如 |
SubtractAssign | 73 | 对数值操作数不执行溢出检查的减法复合赋值运算,例如 |
SubtractAssignChecked | 76 | 对数值操作数进行溢出检查的减法复合赋值运算,如 |
SubtractChecked | 43 | 对数值操作数进行溢出检查的算术减法运算,如 |
Switch | 59 | 多分支选择运算,如 C# 中的 |
Throw | 60 | 引发异常的操作,例如 |
Try | 61 |
|
TypeAs | 44 | 一个显式引用或装箱转换 |
TypeEqual | 81 | 确切类型测试。 |
TypeIs | 45 | 类型测试,例如 |
UnaryPlus | 29 | 一元加运算,例如 |
Unbox | 62 | 取消装箱值类型运算,如 MSIL 中的 |
注解
有关此类型的每个枚举值的详细信息,请参阅 动态语言运行时概述。