ExpressionType Enumeração

Definição

Descreve os tipos de nó para os nós de uma árvore de expressão.

public enum class ExpressionType
public enum ExpressionType
type ExpressionType = 
Public Enum ExpressionType
Herança
ExpressionType

Campos

Nome Valor Description
Add 0

Uma operação de adição, como a + b, sem verificação de estouro, para operandos numéricos.

AddChecked 1

Uma operação de adição, como (a + b), com verificação de estouro, para operandos numéricos.

And 2

Uma operação bit a bit ou lógica AND, como (a & b) em C# e (a And b) em Visual Basic.

AndAlso 3

Uma operação condicional AND que avalia o segundo operando somente se o primeiro operando for avaliado como true. Ele corresponde a (a && b) em C# e (a AndAlso b) em Visual Basic.

ArrayLength 4

Uma operação que obtém o comprimento de uma matriz unidimensional, como array.Length.

ArrayIndex 5

Uma operação de indexação em uma matriz unidimensional, como array[index] em C# ou array(index) em Visual Basic.

Call 6

Uma chamada de método, como na obj.sampleMethod() expressão.

Coalesce 7

Um nó que representa uma operação de coalescagem nula, como (a ?? b) em C# ou If(a, b) em Visual Basic.

Conditional 8

Uma operação condicional, como a > b ? a : b em C# ou If(a > b, a, b) no Visual Basic.

Constant 9

Um valor constante.

Convert 10

Uma operação de conversão ou conversão, como (SampleType)obj em C#ou CType(obj, SampleType) em Visual Basic. Para uma conversão numérica, se o valor convertido for muito grande para o tipo de destino, nenhuma exceção será gerada.

ConvertChecked 11

Uma operação de conversão ou conversão, como (SampleType)obj em C#ou CType(obj, SampleType) em Visual Basic. Para uma conversão numérica, se o valor convertido não se ajustar ao tipo de destino, uma exceção será gerada.

Divide 12

Uma operação de divisão, como (a / b), para operandos numéricos.

Equal 13

Um nó que representa uma comparação de igualdade, como (a == b) em C# ou (a = b) em Visual Basic.

ExclusiveOr 14

Uma operação bit a bit ou lógica XOR, como (a ^ b) em C# ou (a Xor b) em Visual Basic.

GreaterThan 15

Uma comparação "maior que", como (a > b).

GreaterThanOrEqual 16

Uma comparação "maior ou igual a", como (a >= b).

Invoke 17

Uma operação que invoca uma expressão delegada ou lambda, como sampleDelegate.Invoke().

Lambda 18

Uma expressão lambda, como a => a + a em C# ou Function(a) a + a em Visual Basic.

LeftShift 19

Uma operação de deslocamento esquerdo bit a bit, como (a << b).

LessThan 20

Uma comparação "menor que", como (a < b).

LessThanOrEqual 21

Uma comparação "menor ou igual a", como (a <= b).

ListInit 22

Uma operação que cria um novo objeto IEnumerable e o inicializa de uma lista de elementos, como new List<SampleType>(){ a, b, c } em C# ou Dim sampleList = { a, b, c } em Visual Basic.

MemberAccess 23

Uma operação que lê de um campo ou propriedade, como obj.SampleProperty.

MemberInit 24

Uma operação que cria um novo objeto e inicializa um ou mais de seus membros, como new Point { X = 1, Y = 2 } em C# ou New Point With {.X = 1, .Y = 2} em Visual Basic.

Modulo 25

Uma operação de restante aritmético, como (a % b) em C# ou (a Mod b) em Visual Basic.

Multiply 26

Uma operação de multiplicação, como (a * b), sem verificação de estouro, para operandos numéricos.

MultiplyChecked 27

Uma operação de multiplicação, como (a * b), que tem verificação de estouro, para operandos numéricos.

Negate 28

Uma operação de negação aritmética, como (-a). O objeto a não deve ser modificado no local.

UnaryPlus 29

Uma operação de adição unária, como (+a). O resultado de uma operação de adição unária predefinida é o valor do operando, mas implementações definidas pelo usuário podem ter resultados incomuns.

NegateChecked 30

Uma operação de negação aritmética, como (-a), que tem verificação de estouro. O objeto a não deve ser modificado no local.

New 31

Uma operação que chama um construtor para criar um novo objeto, como new SampleType().

NewArrayInit 32

Uma operação que cria uma nova matriz unidimensional e a inicializa de uma lista de elementos, como new SampleType[]{a, b, c} em C# ou New SampleType(){a, b, c} em Visual Basic.

NewArrayBounds 33

Uma operação que cria uma nova matriz, na qual os limites para cada dimensão são especificados, como new SampleType[dim1, dim2] em C# ou New SampleType(dim1, dim2) em Visual Basic.

Not 34

Um complemento bit a bit ou uma operação de negação lógica. No C#, é equivalente a (~a) tipos integrais e a (!a) valores boolianos. Em Visual Basic, é equivalente a (Not a). O objeto a não deve ser modificado no local.

NotEqual 35

Uma comparação de desigualdade, como (a != b) em C# ou (a <> b) em Visual Basic.

Or 36

Uma operação bit a bit ou lógica OR, como (a | b) em C# ou (a Or b) em Visual Basic.

OrElse 37

Um curto-circuito condicional OR operação, como (a || b) em C# ou (a OrElse b) em Visual Basic.

Parameter 38

Uma referência a um parâmetro ou variável definido no contexto da expressão. Para obter mais informações, consulte ParameterExpression.

Power 39

Uma operação matemática que eleva um número a uma potência, como (a ^ b) em Visual Basic.

Quote 40

Uma expressão que tem um valor constante do tipo Expression. Um Quote nó pode conter referências a parâmetros definidos no contexto da expressão que ele representa.

RightShift 41

Uma operação de deslocamento para a direita bit a bit, como (a >> b).

Subtract 42

Uma operação de subtração, como (a - b), sem verificação de estouro, para operandos numéricos.

SubtractChecked 43

Uma operação de subtração aritmética, como (a - b), que tem verificação de estouro, para operandos numéricos.

TypeAs 44

Uma referência explícita ou conversão de boxing na qual null será fornecido se a conversão falhar, como (obj as SampleType) em C# ou TryCast(obj, SampleType) em Visual Basic.

TypeIs 45

Um teste de tipo, como obj is SampleType em C# ou TypeOf obj is SampleType em Visual Basic.

Assign 46

Uma operação de atribuição, como (a = b).

Block 47

Um bloco de expressões.

DebugInfo 48

Informações de depuração.

Decrement 49

Uma operação decremento unário, como (a - 1) em C# e Visual Basic. O objeto a não deve ser modificado no local.

Dynamic 50

Uma operação dinâmica.

Default 51

Um valor padrão.

Extension 52

Uma expressão de extensão.

Goto 53

Uma expressão "ir para", como goto Label em C# ou GoTo Label em Visual Basic.

Increment 54

Uma operação de incremento unário, como (a + 1) em C# e Visual Basic. O objeto a não deve ser modificado no local.

Index 55

Uma operação de índice ou uma operação que acessa uma propriedade que usa argumentos.

Label 56

Uma etiqueta.

RuntimeVariables 57

Uma lista de variáveis em tempo de execução. Para obter mais informações, consulte RuntimeVariablesExpression.

Loop 58

Um loop, como for ou while.

Switch 59

Uma operação de comutador, como switch em C# ou Select Case em Visual Basic.

Throw 60

Uma operação que gera uma exceção, como throw new Exception().

Try 61

Uma expressão try-catch.

Unbox 62

Uma operação de tipo de valor unbox, como unbox e unbox.any instruções no MSIL.

AddAssign 63

Uma operação de atribuição composta de adição, como (a += b), sem verificação de estouro, para operandos numéricos.

AndAssign 64

Uma operação de atribuição composta bit a bit ou lógica AND , como (a &= b) em C#.

DivideAssign 65

Uma operação de atribuição composta de divisão, como (a /= b), para operandos numéricos.

ExclusiveOrAssign 66

Uma operação de atribuição composta bit a bit ou lógica XOR , como (a ^= b) em C#.

LeftShiftAssign 67

Uma atribuição composta de deslocamento esquerdo bit a bit, como (a <<= b).

ModuloAssign 68

Uma operação de atribuição composta de restante aritmético, como (a %= b) em C#.

MultiplyAssign 69

Uma operação de atribuição composta de multiplicação, como (a *= b), sem verificação de estouro, para operandos numéricos.

OrAssign 70

Uma atribuição composta bit a bit ou lógica OR , como (a |= b) em C#.

PowerAssign 71

Uma operação de atribuição composta que eleva um número a uma potência, como (a ^= b) em Visual Basic.

RightShiftAssign 72

Uma operação de atribuição composta de deslocamento de direita bit a bit, como (a >>= b).

SubtractAssign 73

Uma operação de atribuição composta de subtração, como (a -= b), sem verificação de estouro, para operandos numéricos.

AddAssignChecked 74

Uma operação de atribuição composta de adição, como (a += b), com verificação de estouro, para operandos numéricos.

MultiplyAssignChecked 75

Uma operação de atribuição composta de multiplicação, como (a *= b), que tem verificação de estouro, para operandos numéricos.

SubtractAssignChecked 76

Uma operação de atribuição composta de subtração, como (a -= b), que tem verificação de estouro, para operandos numéricos.

PreIncrementAssign 77

Um incremento de prefixo unário, como (++a). O objeto a deve ser modificado no local.

PreDecrementAssign 78

Um decremento de prefixo unário, como (--a). O objeto a deve ser modificado no local.

PostIncrementAssign 79

Um incremento de postfixo unário, como (a++). O objeto a deve ser modificado no local.

PostDecrementAssign 80

Um decremento de postfixo unário, como (a--). O objeto a deve ser modificado no local.

TypeEqual 81

Um teste de tipo exato.

OnesComplement 82

Uma operação complementar, como (~a) em C#.

IsTrue 83

Um true valor de condição.

IsFalse 84

Um false valor de condição.

Comentários

Para obter mais informações sobre cada valor de enumeração desse tipo, consulte a Visão geral do Dynamic Language Runtime.

Aplica-se a