public static BinaryExpression PowerAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
{
RequiresCanRead(left, nameof(left));
RequiresCanWrite(left, nameof(left));
RequiresCanRead(right, nameof(right));
if (method == null)
{
method = Math_Pow_Double_Double;
if (method == null)
{
throw Error.BinaryOperatorNotDefined(ExpressionType.PowerAssign, left.Type, right.Type);
}
}
return GetMethodBasedAssignOperator(ExpressionType.PowerAssign, left, right, method, conversion, liftToNull: true);
}