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# и (b AndAlso) в 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 операция назначения составных соединений, например (^= 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.

Комментарии

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

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