Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ PowerAssign() [3/3]

static BinaryExpression System.Linq.Expressions.Expression< TDelegate >.PowerAssign ( Expression< TDelegate > left,
Expression< TDelegate > right,
MethodInfo? method,
LambdaExpression< TDelegate >? conversion )
inlinestaticinherited

Definition at line 2063 of file Expression.cs.

2064 {
2065 ExpressionUtils.RequiresCanRead(left, "left");
2066 RequiresCanWrite(left, "left");
2067 ExpressionUtils.RequiresCanRead(right, "right");
2068 if (method == null)
2069 {
2070 method = CachedReflectionInfo.Math_Pow_Double_Double;
2071 if (method == null)
2072 {
2073 throw Error.BinaryOperatorNotDefined(ExpressionType.PowerAssign, left.Type, right.Type);
2074 }
2075 }
2076 return GetMethodBasedAssignOperator(ExpressionType.PowerAssign, left, right, method, conversion, liftToNull: true);
2077 }
static void RequiresCanRead(Expression expression, string paramName)
static void RequiresCanWrite(Expression expression, string paramName)
static BinaryExpression GetMethodBasedAssignOperator(ExpressionType binaryType, Expression left, Expression right, MethodInfo method, LambdaExpression conversion, bool liftToNull)

References System.Linq.Expressions.Error.BinaryOperatorNotDefined(), System.Linq.Expressions.Expression< TDelegate >.GetMethodBasedAssignOperator(), System.Linq.Expressions.CachedReflectionInfo.Math_Pow_Double_Double, System.Dynamic.Utils.ExpressionUtils.RequiresCanRead(), and System.Linq.Expressions.Expression< TDelegate >.RequiresCanWrite().