ExpressionType Énumération

Définition

Décrit les types de nœuds pour les nœuds d’une arborescence d’expressions.

public enum class ExpressionType
public enum ExpressionType
type ExpressionType = 
Public Enum ExpressionType
Héritage
ExpressionType

Champs

Nom Valeur Description
Add 0

Opération d’ajout, telle que a + b, sans vérification de dépassement de capacité, pour les opérandes numériques.

AddChecked 1

Opération d’ajout, telle que (a + b), avec vérification de dépassement de capacité, pour les opérandes numériques.

And 2

Opération AND au niveau du bit ou logique, telle que (a & b) en C# et (a And b) dans Visual Basic.

AndAlso 3

Opération conditionnelle AND qui évalue le deuxième opérande uniquement si le premier opérande prend truela valeur . Il correspond à (a && b) en C# et (a AndAlso b) dans Visual Basic.

ArrayLength 4

Opération qui obtient la longueur d’un tableau unidimensionnel, par array.Lengthexemple .

ArrayIndex 5

Opération d’indexation dans un tableau unidimensionnel, telle que array[index] en C# ou array(index) dans Visual Basic.

Call 6

Un appel de méthode, tel que dans l’expression obj.sampleMethod() .

Coalesce 7

Nœud qui représente une opération de fusion Null, telle que (a ?? b) en C# ou If(a, b) dans Visual Basic.

Conditional 8

Une opération conditionnelle, telle que a > b ? a : b en C# ou If(a > b, a, b) dans Visual Basic.

Constant 9

Valeur constante.

Convert 10

Opération de cast ou de conversion, telle que (SampleType)obj en C#ou CType(obj, SampleType) dans Visual Basic. Pour une conversion numérique, si la valeur convertie est trop grande pour le type de destination, aucune exception n’est levée.

ConvertChecked 11

Opération de cast ou de conversion, telle que (SampleType)obj en C#ou CType(obj, SampleType) dans Visual Basic. Pour une conversion numérique, si la valeur convertie ne correspond pas au type de destination, une exception est levée.

Divide 12

Opération de division, telle que (a / b), pour les opérandes numériques.

Equal 13

Nœud qui représente une comparaison d’égalité, telle que (a == b) en C# ou (a = b) dans Visual Basic.

ExclusiveOr 14

Opération XOR au niveau du bit ou logique, telle que (a ^ b) en C# ou (a Xor b) dans Visual Basic.

GreaterThan 15

Comparaison « supérieure à », telle que (a > b).

GreaterThanOrEqual 16

Comparaison « supérieure ou égale à », telle que (a >= b).

Invoke 17

Opération qui appelle un délégué ou une expression lambda, telle que sampleDelegate.Invoke().

Lambda 18

Expression lambda, telle que a => a + a en C# ou Function(a) a + a dans Visual Basic.

LeftShift 19

Opération de décalage gauche au niveau du bit, telle que (a << b).

LessThan 20

Comparaison « inférieure à », telle que (a < b).

LessThanOrEqual 21

Comparaison « inférieure ou égale à », telle que (a <= b).

ListInit 22

Opération qui crée un objet IEnumerable et l’initialise à partir d’une liste d’éléments, tels que new List<SampleType>(){ a, b, c } en C# ou Dim sampleList = { a, b, c } dans Visual Basic.

MemberAccess 23

Opération qui lit à partir d’un champ ou d’une propriété, par obj.SamplePropertyexemple .

MemberInit 24

Opération qui crée un objet et initialise un ou plusieurs de ses membres, tels que new Point { X = 1, Y = 2 } en C# ou New Point With {.X = 1, .Y = 2} dans Visual Basic.

Modulo 25

Opération de reste arithmétique, telle que (a % b) en C# ou (a Mod b) dans Visual Basic.

Multiply 26

Opération de multiplication, telle que (a * b), sans vérification de dépassement de capacité, pour les opérandes numériques.

MultiplyChecked 27

Opération de multiplication, telle que (a * b), qui a une vérification de dépassement de capacité, pour les opérandes numériques.

Negate 28

Opération de négation arithmétique, telle que (-a). L’objet a ne doit pas être modifié en place.

UnaryPlus 29

Opération plus unaire, telle que (+a). Le résultat d’une opération plus unaire prédéfinie est la valeur de l’opérande, mais les implémentations définies par l’utilisateur peuvent avoir des résultats inhabituels.

NegateChecked 30

Opération de négation arithmétique, telle que (-a), qui a une vérification de dépassement de capacité. L’objet a ne doit pas être modifié en place.

New 31

Opération qui appelle un constructeur pour créer un objet, tel que new SampleType().

NewArrayInit 32

Opération qui crée un tableau unidimensionnel et l’initialise à partir d’une liste d’éléments, comme new SampleType[]{a, b, c} en C# ou New SampleType(){a, b, c} dans Visual Basic.

NewArrayBounds 33

Opération qui crée un tableau, dans lequel les limites de chaque dimension sont spécifiées, telles que new SampleType[dim1, dim2] en C# ou New SampleType(dim1, dim2) dans Visual Basic.

Not 34

Opération de négation logique ou de complément au niveau du bit. En C#, il est équivalent aux (~a) types intégraux et aux (!a) valeurs booléennes. Dans Visual Basic, elle équivaut à (Not a). L’objet a ne doit pas être modifié en place.

NotEqual 35

Comparaison des inégalités, telle que (a != b) en C# ou (a <> b) dans Visual Basic.

Or 36

Opération OR au niveau du bit ou logique, telle que (a | b) en C# ou (a Or b) dans Visual Basic.

OrElse 37

Opération de > /OR de court-circuit, telle que (a || b) en C# ou (a OrElse b) dans Visual Basic.

Parameter 38

Référence à un paramètre ou une variable défini dans le contexte de l’expression. Pour plus d’informations, consultez ParameterExpression.

Power 39

Opération mathématique qui élève un nombre à une puissance, telle que (a ^ b) dans Visual Basic.

Quote 40

Expression qui a une valeur constante de type Expression. Un Quote nœud peut contenir des références à des paramètres définis dans le contexte de l’expression qu’il représente.

RightShift 41

Opération de décalage droit au niveau du bit, telle que (a >> b).

Subtract 42

Opération de soustraction, telle que (a - b), sans vérification de dépassement de capacité, pour les opérandes numériques.

SubtractChecked 43

Opération de soustraction arithmétique, telle que (a - b), qui a une vérification de dépassement de capacité, pour les opérandes numériques.

TypeAs 44

Une conversion de référence ou de boxe explicite dans laquelle null est fourni si la conversion échoue, par exemple (obj as SampleType) en C# ou TryCast(obj, SampleType) dans Visual Basic.

TypeIs 45

Test de type, tel que obj is SampleType en C# ou TypeOf obj is SampleType dans Visual Basic.

Assign 46

Opération d’affectation, telle que (a = b).

Block 47

Bloc d’expressions.

DebugInfo 48

Informations de débogage.

Decrement 49

Opération de décrémentation unaire, telle que (a - 1) en C# et Visual Basic. L’objet a ne doit pas être modifié en place.

Dynamic 50

Opération dynamique.

Default 51

Valeur par défaut.

Extension 52

Expression d’extension.

Goto 53

Expression « atteindre », telle que goto Label en C# ou GoTo Label dans Visual Basic.

Increment 54

Opération d’incrémentation unaire, telle que (a + 1) en C# et Visual Basic. L’objet a ne doit pas être modifié en place.

Index 55

Une opération d’index ou une opération qui accède à une propriété qui accepte des arguments.

Label 56

Une étiquette.

RuntimeVariables 57

Liste des variables d’exécution. Pour plus d’informations, consultez RuntimeVariablesExpression.

Loop 58

Boucle, telle que for ou while.

Switch 59

Opération de commutateur, telle que switch en C# ou Select Case dans Visual Basic.

Throw 60

Opération qui lève une exception, telle que throw new Exception().

Try 61

Une expression try-catch.

Unbox 62

Opération de type valeur unbox, telle que unbox des unbox.any instructions dans MSIL.

AddAssign 63

Opération d’affectation composée supplémentaire, telle que (a += b), sans vérification de dépassement de capacité, pour les opérandes numériques.

AndAssign 64

Opération d’assignation composée au niveau du bit ou logique AND , par exemple (a &= b) en C#.

DivideAssign 65

Opération d’affectation composée de division, telle que (a /= b), pour les opérandes numériques.

ExclusiveOrAssign 66

Opération d’assignation composée au niveau du bit ou logique XOR , par exemple (a ^= b) en C#.

LeftShiftAssign 67

Affectation composée de décalage gauche au niveau du bit, telle que (a <<= b).

ModuloAssign 68

Opération d’affectation composée de reste arithmétique, par (a %= b) exemple en C#.

MultiplyAssign 69

Opération d’assignation composée de multiplication, telle que (a *= b), sans vérification de dépassement de capacité, pour les opérandes numériques.

OrAssign 70

Affectation composée au niveau du bit ou logique OR , par (a |= b) exemple en C#.

PowerAssign 71

Opération d’affectation composée qui élève un nombre à une puissance, telle que (a ^= b) dans Visual Basic.

RightShiftAssign 72

Opération d’affectation composée de décalage droit au niveau du bit, telle que (a >>= b).

SubtractAssign 73

Opération d’assignation composée de soustraction, telle que (a -= b), sans vérification de dépassement de capacité, pour les opérandes numériques.

AddAssignChecked 74

Opération d’affectation composée supplémentaire, telle que (a += b), avec vérification de dépassement de capacité, pour les opérandes numériques.

MultiplyAssignChecked 75

Opération d’assignation composée de multiplication, telle que (a *= b), qui a une vérification de dépassement de capacité, pour les opérandes numériques.

SubtractAssignChecked 76

Opération d’assignation composée de soustraction, telle que (a -= b), qui a une vérification de dépassement de capacité, pour les opérandes numériques.

PreIncrementAssign 77

Incrément de préfixe unaire, tel que (++a). L’objet a doit être modifié en place.

PreDecrementAssign 78

Décrémentation de préfixe unaire, par (--a)exemple . L’objet a doit être modifié en place.

PostIncrementAssign 79

Incrément postfix unaire, tel que (a++). L’objet a doit être modifié en place.

PostDecrementAssign 80

Décrémentation postfix unaire, par (a--)exemple . L’objet a doit être modifié en place.

TypeEqual 81

Test de type exact.

OnesComplement 82

Une opération complète, par (~a) exemple en C#.

IsTrue 83

Valeur de true condition.

IsFalse 84

Valeur de false condition.

Remarques

Pour plus d’informations sur chaque valeur d’énumération de ce type, consultez Vue d’ensemble du runtime de langage dynamique.

S’applique à