Expression.Power Expression.Power Expression.Power Expression.Power Method

定義

数値の累乗を表す BinaryExpression を作成します。Creates a BinaryExpression that represents raising a number to a power.

オーバーロード

Power(Expression, Expression) Power(Expression, Expression) Power(Expression, Expression) Power(Expression, Expression)

数値の累乗を表す BinaryExpression を作成します。Creates a BinaryExpression that represents raising a number to a power.

Power(Expression, Expression, MethodInfo) Power(Expression, Expression, MethodInfo) Power(Expression, Expression, MethodInfo) Power(Expression, Expression, MethodInfo)

数値の累乗を表す BinaryExpression を作成します。Creates a BinaryExpression that represents raising a number to a power.

Power(Expression, Expression) Power(Expression, Expression) Power(Expression, Expression) Power(Expression, Expression)

数値の累乗を表す BinaryExpression を作成します。Creates a BinaryExpression that represents raising a number to a power.

public:
 static System::Linq::Expressions::BinaryExpression ^ Power(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression Power (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member Power : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function Power (left As Expression, right As Expression) As BinaryExpression

パラメーター

left
Expression Expression Expression Expression

Expression プロパティを等しく設定する LeftAn Expression to set the Left property equal to.

right
Expression Expression Expression Expression

Expression プロパティを等しく設定する RightAn Expression to set the Right property equal to.

戻り値

BinaryExpression と等しい NodeType プロパティと、指定した値に設定された Power プロパティおよび Left プロパティを含む RightA BinaryExpression that has the NodeType property equal to Power and the Left and Right properties set to the specified values.

例外

left または rightnull です。left or right is null.

指数演算子は left.Type および right.Type に対して定義されていません。The exponentiation operator is not defined for left.Type and right.Type.

または-or- left.Type や right.Type は Double ではありません。left.Type and/or right.Type are not Double.

注釈

結果とBinaryExpressionしてMethod得られるには、実装メソッドに設定されたプロパティがあります。The resulting BinaryExpression has the Method property set to the implementing method. Typeプロパティは、ノードの型に設定されます。The Type property is set to the type of the node. ノードがリフトされているIsLifted場合IsLiftedToNull 、プロパティとtrueプロパティは両方ともです。If the node is lifted, the IsLifted and IsLiftedToNull properties are both true. それ以外の場合falseは、になります。Otherwise, they are false. Conversion プロパティが null である。The Conversion property is null.

次の情報では、実装メソッド、ノード型、およびノードがリフトされているかどうかについて説明します。The following information describes the implementing method, the node type, and whether a node is lifted.

メソッドの実装Implementing Method

次の規則は、操作の実装方法を決定します。The following rules determine the implementing method for the operation:

  • Type MethodInfoまたはのプロパティが、累乗演算子をオーバーロードするユーザー定義型を表している場合、そのメソッドを表すは実装メソッドです。right leftIf the Type property of either left or right represents a user-defined type that overloads the exponentiation operator, the MethodInfo that represents that method is the implementing method.

  • それ以外のleft場合は。「」 rightおよび「」と入力します。型は both Doubleです。実装するメソッドPowはです。Otherwise, if left.Type and right.Type are both Double, the implementing method is Pow.

ノードの種類とリフトされていない、またはリフトされていないNode Type and Lifted versus Non-Lifted

  • left場合。「」 rightおよび「」と入力します。型は、実装するメソッドの対応する引数の型に割り当てることができます。このノードはリフトされていません。If left.Type and right.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. ノードの型は、実装メソッドの戻り値の型です。The type of the node is the return type of the implementing method.

  • 次の2つの条件が満たされると、ノードがリフトされ、ノードの型が、実装するメソッドの戻り値の型に対応する null 許容型になります。If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method:

    • left.「」 rightおよび「」と入力します。型は両方とも、少なくとも1つの値が null 値を許容し、対応する null 非許容型が、実装するメソッドの対応する引数の型と等しい値型です。left.Type and right.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method.

    • 実装するメソッドの戻り値の型は、null 非許容の値型です。The return type of the implementing method is a non-nullable value type.

Power(Expression, Expression, MethodInfo) Power(Expression, Expression, MethodInfo) Power(Expression, Expression, MethodInfo) Power(Expression, Expression, MethodInfo)

数値の累乗を表す BinaryExpression を作成します。Creates a BinaryExpression that represents raising a number to a power.

public:
 static System::Linq::Expressions::BinaryExpression ^ Power(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression Power (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo method);
static member Power : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function Power (left As Expression, right As Expression, method As MethodInfo) As BinaryExpression

パラメーター

left
Expression Expression Expression Expression

Expression プロパティを等しく設定する LeftAn Expression to set the Left property equal to.

right
Expression Expression Expression Expression

Expression プロパティを等しく設定する RightAn Expression to set the Right property equal to.

method
MethodInfo MethodInfo MethodInfo MethodInfo

MethodInfo プロパティを等しく設定する MethodA MethodInfo to set the Method property equal to.

戻り値

BinaryExpression と等しい NodeType プロパティと、指定した値に設定された PowerLeft、および Right の各プロパティを含む MethodA BinaryExpression that has the NodeType property equal to Power and the Left, Right, and Method properties set to the specified values.

例外

left または rightnull です。left or right is null.

methodnull ではなく、それを表すメソッドは void を返し、static (Visual Basic では Shared) ではなく、またはちょうど 2 つの引数を受け取りません。method is not null and the method it represents returns void, is not static (Shared in Visual Basic), or does not take exactly two arguments.

methodnull で、left.Type および right.Type には累乗演算子が定義されていません。method is null and the exponentiation operator is not defined for left.Type and right.Type.

または-or- methodnull であり、left.Type および/または right.Type は Double ではありません。method is null and left.Type and/or right.Type are not Double.

注釈

結果とBinaryExpressionしてMethod得られるには、実装メソッドに設定されたプロパティがあります。The resulting BinaryExpression has the Method property set to the implementing method. Typeプロパティは、ノードの型に設定されます。The Type property is set to the type of the node. ノードがリフトされているIsLifted場合IsLiftedToNull 、プロパティとtrueプロパティは両方ともです。If the node is lifted, the IsLifted and IsLiftedToNull properties are both true. それ以外の場合falseは、になります。Otherwise, they are false. Conversion プロパティが null である。The Conversion property is null.

次の情報では、実装メソッド、ノード型、およびノードがリフトされているかどうかについて説明します。The following information describes the implementing method, the node type, and whether a node is lifted.

メソッドの実装Implementing Method

次の規則は、操作の実装方法を決定します。The following rules determine the implementing method for the operation:

  • methodではnullなく、2つの引数を受け取るstatic voidShared以外の (Visual Basic) メソッドを表す場合は、実装メソッドです。If method is not null and it represents a non-void, static (Shared in Visual Basic) method that takes two arguments, it is the implementing method.

  • それ以外の場合Typeleftまたはrightのプロパティが、累乗演算子をオーバーロードするユーザー定義型を表しMethodInfoている場合、そのメソッドを表すは実装メソッドです。Otherwise, if the Type property of either left or right represents a user-defined type that overloads the exponentiation operator, the MethodInfo that represents that method is the implementing method.

  • それ以外のleft場合は。「」 rightおよび「」と入力します。型は both Doubleです。実装するメソッドPowはです。Otherwise, if left.Type and right.Type are both Double, the implementing method is Pow.

ノードの種類とリフトされていない、またはリフトされていないNode Type and Lifted versus Non-Lifted

  • left場合。「」 rightおよび「」と入力します。型は、実装するメソッドの対応する引数の型に割り当てることができます。このノードはリフトされていません。If left.Type and right.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. ノードの型は、実装メソッドの戻り値の型です。The type of the node is the return type of the implementing method.

  • 次の2つの条件が満たされると、ノードがリフトされ、ノードの型が、実装するメソッドの戻り値の型に対応する null 許容型になります。If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method:

    • left.「」 rightおよび「」と入力します。型は両方とも、少なくとも1つの値が null 値を許容し、対応する null 非許容型が、実装するメソッドの対応する引数の型と等しい値型です。left.Type and right.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method.

    • 実装するメソッドの戻り値の型は、null 非許容の値型です。The return type of the implementing method is a non-nullable value type.

適用対象