Бөлісу құралы:


Expression.NegateChecked Метод

Определение

Создает арифметическую UnaryExpression операцию отрицания, которая имеет проверку переполнения.

Перегрузки

Имя Описание
NegateChecked(Expression)

Создает арифметическую UnaryExpression операцию отрицания, которая имеет проверку переполнения.

NegateChecked(Expression, MethodInfo)

Создает арифметическую UnaryExpression операцию отрицания, которая имеет проверку переполнения. Можно указать метод реализации.

NegateChecked(Expression)

Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs

Создает арифметическую UnaryExpression операцию отрицания, которая имеет проверку переполнения.

public:
 static System::Linq::Expressions::UnaryExpression ^ NegateChecked(System::Linq::Expressions::Expression ^ expression);
public static System.Linq.Expressions.UnaryExpression NegateChecked(System.Linq.Expressions.Expression expression);
static member NegateChecked : System.Linq.Expressions.Expression -> System.Linq.Expressions.UnaryExpression
Public Shared Function NegateChecked (expression As Expression) As UnaryExpression

Параметры

expression
Expression

Значение Expression , равное свойству Operand .

Возвращаемое значение

Значение UnaryExpression , равное NodeType свойству NegateChecked и Operand свойству, заданному указанному значению.

Исключения

expression равно null.

Унарный оператор минус не определен для expression. Тип.

Комментарии

Свойство Method результирующего UnaryExpression объекта имеет значение реализующего метода. Свойство Type устанавливается в соответствии с типом узла. Если узел поднят, IsLifted и IsLiftedToNull свойства оба true. В противном случае они являются ложными.

Реализация метода

Следующие правила определяют метод реализации для операции:

  • If expression. Тип — это определяемый пользователем тип, определяющий унарный оператор минуса, MethodInfo который представляет этот оператор является методом реализации.

  • В противном случае , если expression. Тип является числовым типом, реализуется nullметод.

Тип узла и снятый и не поднимаемый

Если метод реализации не null :

  • If expression. Тип можно назначить типу аргумента метода реализации, узел не поднимается. Тип узла — это возвращаемый тип метода реализации.

  • Если выполнены следующие два условия, узел поднимается, а тип узла — это тип, допускающий значение NULL, соответствующий возвращаемому типу метода реализации:

    • expression. Тип является типом значения, допускающим значение NULL, и соответствующий тип значения, не допускающего значения NULL, равен типу аргумента метода реализации.

    • Возвращаемый тип метода реализации — это ненулевой тип значения.

Если метод реализации имеет тип nullузла expression. Тип. If expression. Тип не допускает значение NULL, узел не поднимается. В противном случае узел поднимается.

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

NegateChecked(Expression, MethodInfo)

Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs

Создает арифметическую UnaryExpression операцию отрицания, которая имеет проверку переполнения. Можно указать метод реализации.

public:
 static System::Linq::Expressions::UnaryExpression ^ NegateChecked(System::Linq::Expressions::Expression ^ expression, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.UnaryExpression NegateChecked(System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.UnaryExpression NegateChecked(System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo? method);
static member NegateChecked : System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.UnaryExpression
Public Shared Function NegateChecked (expression As Expression, method As MethodInfo) As UnaryExpression

Параметры

expression
Expression

Значение Expression , равное свойству Operand .

method
MethodInfo

Значение, MethodInfo равное свойству Method .

Возвращаемое значение

Значение UnaryExpression , равное свойству NodeTypeNegateChecked и OperandMethod свойствам, заданным указанным значениям.

Исключения

expression равно null.

method не null является и метод, который он представляет возвращаемого значения void, не static является (Shared в Visual Basic) или не принимает ровно один аргумент.

method is null и унарный оператор минуса не определен для expression. Тип.

–или–

expression. Тип (или соответствующий ненулевой тип, если он является типом значений, допускаемым значением NULL), не может быть назначен типу аргумента метода, представленного method.

Комментарии

Свойство Method результирующего UnaryExpression объекта имеет значение реализующего метода. Свойство Type устанавливается в соответствии с типом узла. Если узел поднят, IsLifted и IsLiftedToNull свойства оба true. В противном случае они являются ложными.

Реализация метода

Следующие правила определяют метод реализации для операции:

  • Если method это не null так, static и он представляет непустый метод (Shared в Visual Basic), который принимает один аргумент, это метод реализации для узла.

  • If expression. Тип — это определяемый пользователем тип, определяющий унарный оператор минуса, MethodInfo который представляет этот оператор является методом реализации.

  • В противном случае , если expression. Тип является числовым типом, реализуется nullметод.

Тип узла и снятый и не поднимаемый

Если метод реализации не null :

  • If expression. Тип можно назначить типу аргумента метода реализации, узел не поднимается. Тип узла — это возвращаемый тип метода реализации.

  • Если выполнены следующие два условия, узел поднимается, а тип узла — это тип, допускающий значение NULL, соответствующий возвращаемому типу метода реализации:

    • expression. Тип является типом значения, допускающим значение NULL, и соответствующий тип значения, не допускающего значения NULL, равен типу аргумента метода реализации.

    • Возвращаемый тип метода реализации — это ненулевой тип значения.

Если метод реализации имеет тип nullузла expression. Тип. If expression. Тип не допускает значение NULL, узел не поднимается. В противном случае узел поднимается.

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