Share via


ExpressionType Enumeration

Describes the node types for the nodes of an expression tree. This type must be consistent with ExpressionType

Namespace: Microsoft.SpecExplorer.ObjectModel
Assembly: Microsoft.SpecExplorer.ObjectModel (in Microsoft.SpecExplorer.ObjectModel.dll)

Usage

'Usage

Syntax

'Declaration
public enum ExpressionType

Members

Member name Description
Add A node that represents arithmetic addition without overflow checking.
AddAssign A node that represents an arithmetic addition compound assignment without overflow checking.
AddAssignChecked A node that represents an arithmetic addition compound assignment with overflow checking.
AddChecked A node that represents arithmetic addition with overflow checking.
And A node that represents a bitwise AND operation.
AndAlso A node that represents a short-circuiting conditional AND operation.
AndAssign A node that represents a bitwise AND compound assignment.
ArrayIndex A node that represents indexing into a one-dimensional array.
ArrayLength A node that represents getting the length of a one-dimensional array.
Assign A node that represents an assignment.
Block A node that represents a block of expressions.
Call A node that represents a method call.
Coalesce A node that represents a null coalescing operation.
Conditional A node that represents a conditional operation.
Constant A node that represents an expression that has a constant value.
Convert A node that represents a cast or conversion operation. If the operation is a numeric conversion, it overflows silently if the converted value does not fit the target type.
ConvertChecked A node that represents a cast or conversion operation. If the operation is a numeric conversion, an exception is thrown if the converted value does not fit the target type.
DebugInfo A node that represents a debugging information.
Decrement A node that represents a unary decrement.
Default A node that represents a default value.
Divide A node that represents arithmetic division.
DivideAssign A node that represents an arithmetic division compound assignment
Dynamic A node that represents a dynamic operation.
Equal A node that represents an equality comparison.
ExclusiveOr A node that represents a bitwise XOR operation.
ExclusiveOrAssign A node that represents a bitwise XOR compound assignment.
Extension A node that represents an extension expression.
Goto A node that represents a goto.
GreaterThan A node that represents a "greater than" numeric comparison.
GreaterThanOrEqual A node that represents a "greater than or equal" numeric comparison.
Increment A node that represents a unary increment.
Index A node that represents an index operation.
Invoke A node that represents applying a delegate or lambda expression to a list of argument expressions.
IsFalse A node that represents a false condition value.
IsTrue A node that represents a true condition value.
Label A node that represents a label.
Lambda A node that represents a lambda expression.
LeftShift A node that represents a bitwise left-shift operation.
LeftShiftAssign A node that represents a bitwise left-shift compound assignment.
LessThan A node that represents a "less than" numeric comparison.
LessThanOrEqual A node that represents a "less than or equal" numeric comparison.
ListInit A node that represents creating a new IEnumerable object and initializing it from a list of elements.
Loop A node that represents a loop.
MemberAccess A node that represents reading from a field or property.
MemberInit A node that represents creating a new object and initializing one or more of its members.
Modulo A node that represents an arithmetic remainder operation.
ModuloAssign A node that represents an arithmetic remainder compound assignment.
Multiply A node that represents arithmetic multiplication without overflow checking.
MultiplyAssign A node that represents arithmetic multiplication compound assignment without overflow checking.
MultiplyAssignChecked A node that represents arithmetic multiplication compound assignment with overflow checking.
MultiplyChecked A node that represents arithmetic multiplication with overflow checking.
Negate A node that represents an arithmetic negation operation.
NegateChecked A node that represents an arithmetic negation operation that has overflow checking.
New A node that represents calling a constructor to create a new object.
NewArrayBounds A node that represents creating a new array where the bounds for each dimension are specified.
NewArrayInit A node that represents creating a new one-dimensional array and initializing it from a list of elements.
Not A node that represents a bitwise complement operation.
NotEqual A node that represents an inequality comparison.
OnesComplement A node that represents a ones complement.
Or A node that represents a bitwise OR operation.
OrAssign A node that represents a bitwise OR compound assignment.
OrElse A node that represents a short-circuiting conditional OR operation.
Parameter A node that represents a reference to a parameter or variable defined in the context of the expression.
PostDecrementAssign A node that represents a unary postfix decrement.
PostIncrementAssign A node that represents a unary postfix increment.
Power A node that represents raising a number to a power.
PowerAssign A node that represents raising a number to a power compound assignment.
PreDecrementAssign A node that represents a unary prefix decrement.
PreIncrementAssign A node that represents a unary prefix increment.
Quote A node that represents an expression that has a constant value of type Expression. A Quote node can contain references to parameters defined in the context of the expression it represents.
RightShift A node that represents a bitwise right-shift operation.
RightShiftAssign A node that represents a bitwise right-shift compound assignment.
RuntimeVariables A node that represents a list of runtime variables.
Subtract A node that represents arithmetic subtraction without overflow checking.
SubtractAssign A node that represents arithmetic subtraction compound assignment without overflow checking.
SubtractAssignChecked A node that represents arithmetic subtraction compound assignment with overflow checking.
SubtractChecked A node that represents arithmetic subtraction with overflow checking.
Switch A node that represents a switch operation.
Throw A node that represents a throwing of an exception.
Try A node that represents a try-catch expression.
TypeAs A node that represents an explicit reference or boxing conversion where null is supplied if the conversion fails.
TypeEqual A node that represents an exact type test.
TypeIs A node that represents a type test.
UnaryPlus A node that represents a unary plus operation. The result of a predefined unary plus operation is simply the value of the operand, but user-defined implementations may have non-trivial results.
Unbox A node that represents an unbox value type operation.

Platforms

Development Platforms

Microsoft Windows 7, Microsoft Windows Vista, Microsoft Windows XP SP2 or later, Microsoft Windows Server 2008, Microsoft Windows Server 2003

See Also

Reference

Microsoft.SpecExplorer.ObjectModel Namespace