ExpressionType Enum
Definition
Important
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.
Describes the node types for the nodes of an expression tree.
public enum class ExpressionType
public enum ExpressionType
type ExpressionType =
Public Enum ExpressionType
- Inheritance
Fields
Add | 0 | An addition operation, such as |
AddAssign | 63 | An addition compound assignment operation, such as |
AddAssignChecked | 74 | An addition compound assignment operation, such as |
AddChecked | 1 | An addition operation, such as |
And | 2 | A bitwise or logical |
AndAlso | 3 | A conditional |
AndAssign | 64 | A bitwise or logical |
ArrayIndex | 5 | An indexing operation in a one-dimensional array, such as |
ArrayLength | 4 | An operation that obtains the length of a one-dimensional array, such as |
Assign | 46 | An assignment operation, such as |
Block | 47 | A block of expressions. |
Call | 6 | A method call, such as in the |
Coalesce | 7 | A node that represents a null coalescing operation, such as |
Conditional | 8 | A conditional operation, such as |
Constant | 9 | A constant value. |
Convert | 10 | A cast or conversion operation, such as |
ConvertChecked | 11 | A cast or conversion operation, such as |
DebugInfo | 48 | Debugging information. |
Decrement | 49 | A unary decrement operation, such as |
Default | 51 | A default value. |
Divide | 12 | A division operation, such as |
DivideAssign | 65 | An division compound assignment operation, such as |
Dynamic | 50 | A dynamic operation. |
Equal | 13 | A node that represents an equality comparison, such as |
ExclusiveOr | 14 | A bitwise or logical |
ExclusiveOrAssign | 66 | A bitwise or logical |
Extension | 52 | An extension expression. |
Goto | 53 | A "go to" expression, such as |
GreaterThan | 15 | A "greater than" comparison, such as |
GreaterThanOrEqual | 16 | A "greater than or equal to" comparison, such as |
Increment | 54 | A unary increment operation, such as |
Index | 55 | An index operation or an operation that accesses a property that takes arguments. |
Invoke | 17 | An operation that invokes a delegate or lambda expression, such as |
IsFalse | 84 | A |
IsTrue | 83 | A |
Label | 56 | A label. |
Lambda | 18 | A lambda expression, such as |
LeftShift | 19 | A bitwise left-shift operation, such as |
LeftShiftAssign | 67 | A bitwise left-shift compound assignment, such as |
LessThan | 20 | A "less than" comparison, such as |
LessThanOrEqual | 21 | A "less than or equal to" comparison, such as |
ListInit | 22 | An operation that creates a new IEnumerable object and initializes it from a list of elements, such as |
Loop | 58 | A loop, such as |
MemberAccess | 23 | An operation that reads from a field or property, such as |
MemberInit | 24 | An operation that creates a new object and initializes one or more of its members, such as |
Modulo | 25 | An arithmetic remainder operation, such as |
ModuloAssign | 68 | An arithmetic remainder compound assignment operation, such as |
Multiply | 26 | A multiplication operation, such as |
MultiplyAssign | 69 | A multiplication compound assignment operation, such as |
MultiplyAssignChecked | 75 | A multiplication compound assignment operation, such as |
MultiplyChecked | 27 | An multiplication operation, such as |
Negate | 28 | An arithmetic negation operation, such as |
NegateChecked | 30 | An arithmetic negation operation, such as |
New | 31 | An operation that calls a constructor to create a new object, such as |
NewArrayBounds | 33 | An operation that creates a new array, in which the bounds for each dimension are specified, such as |
NewArrayInit | 32 | An operation that creates a new one-dimensional array and initializes it from a list of elements, such as |
Not | 34 | A bitwise complement or logical negation operation. In C#, it is equivalent to |
NotEqual | 35 | An inequality comparison, such as |
OnesComplement | 82 | A ones complement operation, such as |
Or | 36 | A bitwise or logical |
OrAssign | 70 | A bitwise or logical |
OrElse | 37 | A short-circuiting conditional |
Parameter | 38 | A reference to a parameter or variable that is defined in the context of the expression. For more information, see ParameterExpression. |
PostDecrementAssign | 80 | A unary postfix decrement, such as |
PostIncrementAssign | 79 | A unary postfix increment, such as |
Power | 39 | A mathematical operation that raises a number to a power, such as |
PowerAssign | 71 | A compound assignment operation that raises a number to a power, such as |
PreDecrementAssign | 78 | A unary prefix decrement, such as |
PreIncrementAssign | 77 | A unary prefix increment, such as |
Quote | 40 | An expression that has a constant value of type Expression. A Quote node can contain references to parameters that are defined in the context of the expression it represents. |
RightShift | 41 | A bitwise right-shift operation, such as |
RightShiftAssign | 72 | A bitwise right-shift compound assignment operation, such as |
RuntimeVariables | 57 | A list of run-time variables. For more information, see RuntimeVariablesExpression. |
Subtract | 42 | A subtraction operation, such as |
SubtractAssign | 73 | A subtraction compound assignment operation, such as |
SubtractAssignChecked | 76 | A subtraction compound assignment operation, such as |
SubtractChecked | 43 | An arithmetic subtraction operation, such as |
Switch | 59 | A switch operation, such as |
Throw | 60 | An operation that throws an exception, such as |
Try | 61 | A |
TypeAs | 44 | An explicit reference or boxing conversion in which |
TypeEqual | 81 | An exact type test. |
TypeIs | 45 | A type test, such as |
UnaryPlus | 29 | A unary plus operation, such as |
Unbox | 62 | An unbox value type operation, such as |
Remarks
For more information about each enumeration value of this type, see Dynamic Language Runtime Overview.