diff --git a/standard/expressions.md b/standard/expressions.md index a32724491..6761fac49 100644 --- a/standard/expressions.md +++ b/standard/expressions.md @@ -3018,97 +3018,97 @@ The predefined multiplication operators are listed below. The operators all comp ``` The product is computed according to the rules of IEC 60559 arithmetic. The following table lists the results of all possible combinations of nonzero finite values, zeros, infinities, and NaNs. In the table, `x` and `y` are positive finite values. `z` is the result of `x * y`, rounded to the nearest representable value. If the magnitude of the result is too large for the destination type, `z` is infinity. Because of rounding, `z` may be zero even though neither `x` nor `y` is zero. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+y-y+0-0+∞-∞NaN
+x+z-z+0-0+∞-∞NaN
-x-z+z-0+0-∞+∞NaN
+0+0-0+0-0NaNNaNNaN
-0-0+0-0+0NaNNaNNaN
+∞+∞-∞NaNNaN+∞-∞NaN
-∞-∞+∞NaNNaN-∞+∞NaN
NaNNaNNaNNaNNaNNaNNaNNaN
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+y-y+0-0+∞-∞NaN
+x+z-z+0-0+∞-∞NaN
-x-z+z-0+0-∞+∞NaN
+0+0-0+0-0NaNNaNNaN
-0-0+0-0+0NaNNaNNaN
+∞+∞-∞NaNNaN+∞-∞NaN
-∞-∞+∞NaNNaN-∞+∞NaN
NaNNaNNaNNaNNaNNaNNaNNaN
(Except were otherwise noted, in the floating-point tables in [§11.9.2](expressions.md#1192-multiplication-operator)–[§11.9.6](expressions.md#1196-subtraction-operator) the use of “`+`” means the value is positive; the use of “`-`” means the value is negative; and the lack of a sign means the value may be positive or negative or has no sign (NaN).) - Decimal multiplication: @@ -3146,97 +3146,97 @@ The predefined division operators are listed below. The operators all compute th The quotient is computed according to the rules of IEC 60559 arithmetic. The following table lists the results of all possible combinations of nonzero finite values, zeros, infinities, and NaNs. In the table, `x` and `y` are positive finite values. `z` is the result of `x / y`, rounded to the nearest representable value. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+y-y+0-0+∞-∞NaN
+x+z-z+∞–∞+0-0NaN
-x-z+z-∞+∞-0+0NaN
+0+0-0NaNNaN+0-0NaN
-0-0+0NaNNaN-0+0NaN
+∞+∞-∞+∞-∞NaNNaNNaN
-∞-∞+∞-∞+∞NaNNaNNaN
NaNNaNNaNNaNNaNNaNNaNNaN
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+y-y+0-0+∞-∞NaN
+x+z-z+∞–∞+0-0NaN
-x-z+z-∞+∞-0+0NaN
+0+0-0NaNNaN+0-0NaN
-0-0+0NaNNaN-0+0NaN
+∞+∞-∞+∞-∞NaNNaNNaN
-∞-∞+∞-∞+∞NaNNaNNaN
NaNNaNNaNNaNNaNNaNNaNNaN
- Decimal division: ```csharp @@ -3274,98 +3274,97 @@ The predefined remainder operators are listed below. The operators all compute t The following table lists the results of all possible combinations of nonzero finite values, zeros, infinities, and NaNs. In the table, `x` and `y` are positive finite values. `z` is the result of `x % y` and is computed as `x – n * y`, where n is the largest possible integer that is less than or equal to `x / y`. This method of computing the remainder is analogous to that used for integer operands, but differs from the IEC 60559 definition (in which `n` is the integer closest to `x / y`). - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+y-y+0-0+∞–∞NaN
+x+z+zNaNNaN+x+xNaN
-x-z-zNaNNaN-x-xNaN
+0+0+0NaNNaN+0+0NaN
-0-0-0NaNNaN-0-0NaN
+∞NaNNaNNaNNaNNaNNaNNaN
-∞NaNNaNNaNNaNNaNNaNNaN
NaNNaNNaNNaNNaNNaNNaNNaN
- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+y-y+0-0+∞–∞NaN
+x+z+zNaNNaN+x+xNaN
-x-z-zNaNNaN-x-xNaN
+0+0+0NaNNaN+0+0NaN
-0-0-0NaNNaN-0-0NaN
+∞NaNNaNNaNNaNNaNNaNNaN
-∞NaNNaNNaNNaNNaNNaNNaN
NaNNaNNaNNaNNaNNaNNaNNaN
- Decimal remainder: ```csharp decimal operator %(decimal x, decimal y); @@ -3401,79 +3400,79 @@ The predefined addition operators are listed below. For numeric and enumeration The sum is computed according to the rules of IEC 60559 arithmetic. The following table lists the results of all possible combinations of nonzero finite values, zeros, infinities, and NaNs. In the table, `x` and `y` are nonzero finite values, and `z` is the result of `x + y`,. If `x` and `y` have the same magnitude but opposite signs, `z` is positive zero. If `x + y` is too large to represent in the destination type, `z` is an infinity with the same sign as `x + y`. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
y+0-0+∞–∞NaN
xzxx+∞-∞NaN
+0y+0+0+∞–∞NaN
-0y+0-0+∞-∞NaN
+∞+∞+∞+∞+∞NaNNaN
-∞-∞-∞-∞NaN-∞NaN
NaNNaNNaNNaNNaNNaNNaN
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
y+0-0+∞–∞NaN
xzxx+∞-∞NaN
+0y+0+0+∞–∞NaN
-0y+0-0+∞-∞NaN
+∞+∞+∞+∞+∞NaNNaN
-∞-∞-∞-∞NaN-∞NaN
NaNNaNNaNNaNNaNNaNNaN
- Decimal addition: ```csharp @@ -3555,79 +3554,79 @@ The predefined subtraction operators are listed below. The operators all subtrac ``` The difference is computed according to the rules of IEC 60559 arithmetic. The following table lists the results of all possible combinations of nonzero finite values, zeros, infinities, and NaNs. In the table, `x` and `y` are nonzero finite values, and `z` is the result of `x – y`. If `x` and `y` are equal, `z` is positive zero. If `x – y` is too large to represent in the destination type, `z` is an infinity with the same sign as `x – y`. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
y+0-0+∞–∞NaN
xzxx–∞+∞NaN
+0-y+0+0–∞+∞NaN
-0-y-0+0–∞+∞NaN
+∞+∞+∞+∞NaN+∞NaN
-∞-∞-∞-∞–∞NaNNaN
NaNNaNNaNNaNNaNNaNNaN
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
y+0-0+∞–∞NaN
xzxx–∞+∞NaN
+0-y+0+0–∞+∞NaN
-0-y-0+0–∞+∞NaN
+∞+∞+∞+∞NaN+∞NaN
-∞-∞-∞-∞–∞NaNNaN
NaNNaNNaNNaNNaNNaNNaN
(In the above table the `-y` entries denote the *negation* of `y`, not that the value is negative.) - Decimal subtraction: @@ -5609,7 +5608,7 @@ class C : C public C Select(Func selector); public C SelectMany(Func> selector, Func resultSelector); public C Join(C inner, Func outerKeySelector, - Func innerKeySelector, Func resultSelector); + Func innerKeySelector, Func resultSelector); public C GroupJoin(C inner, Func outerKeySelector, Func innerKeySelector, Func,V> resultSelector); public O OrderBy(Func keySelector);