Поделиться через


ExpressionType Перечисление

Определение

Описывает типы узлов для узлов дерева выражений.

public enum class ExpressionType
public enum ExpressionType
type ExpressionType = 
Public Enum ExpressionType
Наследование
ExpressionType

Поля

Add 0

Операция сложения, например a + b, без проверки переполнения для числовых операндов.

AddAssign 63

Операция сложения составного назначения, например (a += b), без проверки переполнения для числовых операндов.

AddAssignChecked 74

Операция сложения составного назначения, например (a += b), с проверкой переполнения для числовых операндов.

AddChecked 1

Операция сложения, например (a + b), с проверкой переполнения для числовых операндов.

And 2

Побитовая или логическая AND операция, например (a & b) в C# и (a And b) в Visual Basic.

AndAlso 3

Условная операция AND, вычисляющая второй операнд, только если первый операнд имеет значение true. Он соответствует (a && b) в C# и (a AndAlso b) в Visual Basic.

AndAssign 64

Побитовая или логическая AND составная операция присваивания, например (a &= b) в C#.

ArrayIndex 5

Операция индексирования в одномерном массиве, например array[index] в C# или array(index) в Visual Basic.

ArrayLength 4

Операция, которая получает длину одномерного массива, например array.Length.

Assign 46

Операция присваивания, например (a = b).

Block 47

Блок выражений.

Call 6

Вызов метода, например в obj.sampleMethod() выражении.

Coalesce 7

Узел, представляющий операцию объединения со значением NULL, например (a ?? b) в C# или If(a, b) в Visual Basic.

Conditional 8

Условная операция, например a > b ? a : b в C# или If(a > b, a, b) в Visual Basic.

Constant 9

Значение-константа.

Convert 10

Операция приведения или преобразования, например (SampleType)obj в C# или CType(obj, SampleType) в Visual Basic. Если преобразованное значение слишком велико для целевого типа, в ходе числового преобразования не создается исключение.

ConvertChecked 11

Операция приведения или преобразования, например (SampleType)obj в C# или CType(obj, SampleType) в Visual Basic. Если преобразованное значение не соответствует целевому типу, в ходе числового преобразования создается исключение.

DebugInfo 48

Сведения для отладки.

Decrement 49

Унарная операция декремента, например (a - 1) в C# и Visual Basic. Объект a не следует изменять на месте.

Default 51

Значение по умолчанию.

Divide 12

Операция деления, например (a / b), для числовых операндов.

DivideAssign 65

Операция составного назначения деления, например (a /= b), для числовых операндов.

Dynamic 50

Динамическая операция.

Equal 13

Узел, представляющий сравнение на равенство, например (a == b) в C# или (a = b) в Visual Basic.

ExclusiveOr 14

Побитовая или логическая XOR операция, например (a ^ b) в C# или (a Xor b) в Visual Basic.

ExclusiveOrAssign 66

Побитовая или логическая XOR составная операция присваивания, например (a ^= b) в C#.

Extension 52

Выражение расширения.

Goto 53

Выражение "перейти", например goto Label в C# или GoTo Label в Visual Basic.

GreaterThan 15

Сравнение "больше", например (a > b).

GreaterThanOrEqual 16

Сравнение "больше или равно", например (a >= b).

Increment 54

Операция унарного приращения, например (a + 1) в C# и Visual Basic. Объект a не следует изменять на месте.

Index 55

Операция индекса или операция, осуществляющая доступ к свойству, которое принимает аргументы.

Invoke 17

Операция, которая вызывает делегат или лямбда-выражение, например sampleDelegate.Invoke().

IsFalse 84

Значение условия false.

IsTrue 83

Значение условия true.

Label 56

Метка.

Lambda 18

Лямбда-выражение, например a => a + a в C# или Function(a) a + a в Visual Basic.

LeftShift 19

Побитовая операция сдвига влево, например (a << b).

LeftShiftAssign 67

Побитовое составное назначение сдвига влево, например (a <<= b).

LessThan 20

Сравнение "меньше", например (a < b).

LessThanOrEqual 21

Сравнение "меньше или равно", например (a <= b).

ListInit 22

Операция, которая создает новый IEnumerable объект и инициализирует его из списка элементов, например new List<SampleType>(){ a, b, c } в C# или Dim sampleList = { a, b, c } в Visual Basic.

Loop 58

Цикл, например for или while.

MemberAccess 23

Операция, которая считывает из поля или свойства, например obj.SampleProperty.

MemberInit 24

Операция, которая создает новый объект и инициализирует один или несколько его членов, например new Point { X = 1, Y = 2 } в C# или New Point With {.X = 1, .Y = 2} в Visual Basic.

Modulo 25

Арифметическая операция остатка, например (a % b) в C# или (a Mod b) в Visual Basic.

ModuloAssign 68

Арифметическая операция присваивания остатков, например (a %= b) в C#.

Multiply 26

Операция умножения, например (a * b), без проверки переполнения для числовых операндов.

MultiplyAssign 69

Операция умножения составного присваивания, например (a *= b), без проверки переполнения для числовых операндов.

MultiplyAssignChecked 75

Операция умножения составного присваивания, например (a *= b), с проверкой переполнения для числовых операндов.

MultiplyChecked 27

Операция умножения, например (a * b), с проверкой переполнения для числовых операндов.

Negate 28

Операция арифметического отрицания, например (-a). Объект a не следует изменять на месте.

NegateChecked 30

Операция арифметического отрицания, например (-a), с проверкой переполнения. Объект a не следует изменять на месте.

New 31

Операция, которая вызывает конструктор для создания нового объекта, например new SampleType().

NewArrayBounds 33

Операция, которая создает новый массив, в котором указываются границы для каждого измерения, например new SampleType[dim1, dim2] в C# или New SampleType(dim1, dim2) в Visual Basic.

NewArrayInit 32

Операция, которая создает новый одномерный массив и инициализирует его из списка элементов, например new SampleType[]{a, b, c} в C# или New SampleType(){a, b, c} в Visual Basic.

Not 34

Побитовая операция дополнения или логического отрицания. В C# это эквивалентно (~a) для целочисленных типов и для (!a) логических значений. В Visual Basic это эквивалентно (Not a). Объект a не следует изменять на месте.

NotEqual 35

Сравнение неравенства, например (a != b) в C# или (a <> b) в Visual Basic.

OnesComplement 82

Операция дополнения к единицам, например (~a) в C#.

Or 36

Побитовая или логическая OR операция, например (a | b) в C# или (a Or b) в Visual Basic.

OrAssign 70

Побитовое или логическое OR составное назначение, например (a |= b) в C#.

OrElse 37

Условная OR операция с сокращением, например (a || b) в C# или (a OrElse b) в Visual Basic.

Parameter 38

Ссылка на параметр или переменную, определенную в контексте выражения. Для получения дополнительной информации см. ParameterExpression.

PostDecrementAssign 80

Унарный постфиксный декремент, например (a--). Объект a должен быть изменен на месте.

PostIncrementAssign 79

Унарное постфиксное приращение, например (a++). Объект a должен быть изменен на месте.

Power 39

Математическая операция, которая поднимает число в степень, например (a ^ b) в Visual Basic.

PowerAssign 71

Составная операция присваивания, которая поднимает число в степень, например (a ^= b) в Visual Basic.

PreDecrementAssign 78

Декремент унарного префикса, например (--a). Объект a должен быть изменен на месте.

PreIncrementAssign 77

Унарное приращение префикса, например (++a). Объект a должен быть изменен на месте.

Quote 40

Выражение, содержащее постоянное значение типа Expression. узел Quote может содержать ссылку на параметры, определенные в контексте представленного выражения.

RightShift 41

Побитовая операция сдвига вправо, например (a >> b).

RightShiftAssign 72

Побитовая операция составного присваивания сдвига вправо, например (a >>= b).

RuntimeVariables 57

Список переменных времени выполнения. Для получения дополнительной информации см. RuntimeVariablesExpression.

Subtract 42

Операция вычитания, например (a - b), без проверки переполнения для числовых операндов.

SubtractAssign 73

Операция вычитания составного присваивания, например (a -= b), без проверки переполнения для числовых операндов.

SubtractAssignChecked 76

Операция вычитания составного присваивания, например (a -= b), с проверкой переполнения для числовых операндов.

SubtractChecked 43

Операция арифметического вычитания, например (a - b), с проверкой переполнения для числовых операндов.

Switch 59

Операция выбора, например switch в C# или Select Case в Visual Basic.

Throw 60

Операция, которая вызывает исключение, например throw new Exception().

Try 61

Выражение try-catch.

TypeAs 44

Явная ссылка или преобразование в коробке, в котором null указывается в случае сбоя преобразования, например (obj as SampleType) в C# или TryCast(obj, SampleType) в Visual Basic.

TypeEqual 81

Проверка совпадения типа.

TypeIs 45

Тест типа, например obj is SampleType на C# или TypeOf obj is SampleType в Visual Basic.

UnaryPlus 29

Унарная операция плюс, например (+a). Результатом заранее определенной унарной операции "плюс" является просто значение операнда, но определенные пользователем реализации могут иметь нетривиальные результаты.

Unbox 62

Операция распаковки-преобразования типа значения, например инструкции unbox и unbox.any в MSIL.

Комментарии

Дополнительные сведения о каждом значении перечисления этого типа см. в разделе Обзор динамической языковой среды выполнения.

Применяется к