16 implementations of Zero
System.Private.CoreLib (15)
src\runtime\src\libraries\System.Private.CoreLib\src\System\Byte.cs (1)
551static byte INumberBase<byte>.Zero => Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Char.cs (1)
1488static char INumberBase<char>.Zero => (char)0;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Decimal.cs (1)
1276static decimal INumberBase<decimal>.Zero => Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Double.cs (1)
1057static double INumberBase<double>.Zero => Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Int16.cs (1)
651static short INumberBase<short>.Zero => Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Int32.cs (1)
693static int INumberBase<int>.Zero => Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Int64.cs (1)
690static long INumberBase<long>.Zero => Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\IntPtr.cs (1)
713static nint INumberBase<nint>.Zero => 0;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\InteropServices\NFloat.cs (1)
1215static NFloat INumberBase<NFloat>.Zero => new NFloat(NativeType.Zero);
src\runtime\src\libraries\System.Private.CoreLib\src\System\SByte.cs (1)
630static sbyte INumberBase<sbyte>.Zero => Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Single.cs (1)
1052static float INumberBase<float>.Zero => Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\UInt16.cs (1)
556static ushort INumberBase<ushort>.Zero => Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\UInt32.cs (1)
621static uint INumberBase<uint>.Zero => Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\UInt64.cs (1)
628static ulong INumberBase<ulong>.Zero => Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\UIntPtr.cs (1)
627static nuint INumberBase<nuint>.Zero => 0;
System.Runtime.Numerics (1)
System\Numerics\Complex.cs (1)
520static Complex INumberBase<Complex>.Zero => new(0.0, 0.0);
303 references to Zero
System.Formats.Tar (2)
System\Formats\Tar\TarHelpers.cs (2)
253return T.Zero; 257T value = T.Zero;
System.Linq (11)
System\Linq\Max.cs (2)
61if (valueVal >= T.Zero) 603if (valueVal >= TResult.Zero)
System\Linq\Range.SpeedOpt.cs (1)
59return T.Zero;
System\Linq\Sequence.cs (2)
124Debug.Assert(step > T.Zero); 150Debug.Assert(step < T.Zero);
System\Linq\Sum.cs (6)
37TResult sum = TResult.Zero; 70TResult sum = TResult.Zero; 160T result = T.Zero; 194TAccumulator sum = TAccumulator.Zero; 231TAccumulator sum = TAccumulator.Zero; 265TAccumulator sum = TAccumulator.Zero;
System.Linq.AsyncEnumerable (2)
System\Linq\Sequence.cs (2)
98Debug.Assert(step > T.Zero); 124Debug.Assert(step < T.Zero);
System.Numerics.Tensors (3)
System\Numerics\Tensors\netcore\TensorPrimitives.CosineSimilarity.cs (3)
174T dotProduct = T.Zero, xSumOfSquares = T.Zero, ySumOfSquares = T.Zero;
System.Private.CoreLib (175)
src\runtime\src\libraries\System.Private.CoreLib\src\System\Byte.cs (1)
550/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Char.cs (1)
1487/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Decimal.cs (1)
1275/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Decimal.DecCalc.cs (1)
1740return TFloat.Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Double.cs (1)
1056/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Enum.cs (5)
2030if (resultValue == TStorage.Zero) 2033return values.Length > 0 && values[0] == TStorage.Zero ? 2078if (index == 0 && currentValue == TStorage.Zero) 2089if (resultValue == TStorage.Zero) 2102return resultValue == TStorage.Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Half.cs (1)
1803/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Int128.cs (1)
1266/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Int16.cs (1)
650/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Int32.cs (1)
692/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Int64.cs (1)
689/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\IntPtr.cs (1)
712/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Number.DecimalIeee754.cs (83)
23if (decoded.Significand == TValue.Zero) 65bool signed = (decimalBits & TDecimal.SignMask) != TValue.Zero; 87significand = TValue.Zero; 142if (current.Significand == TValue.Zero && other.Significand == TValue.Zero) 168if (current.Significand == TValue.Zero) 170return other.Significand == TValue.Zero ? 0 : -1; 172else if (other.Significand == TValue.Zero) 206if (remainder > TValue.Zero) 270bool leftZero = left.Significand == TValue.Zero; 271bool rightZero = right.Significand == TValue.Zero; 302return (remainder == TValue.Zero) && (quotient == left.Significand); 357return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(number.IsNegative, TValue.Zero, number.Scale); 384return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(number.IsNegative, TValue.Zero, TDecimal.MinAdjustedExponent); 495TValue value = TValue.Zero; 496bool msbSignificand = (significand & TDecimal.MostSignificantBitOfSignificandMask) != TValue.Zero; 529return ((bidBits & TDecimal.SignMask) != TValue.Zero) ? TDecimal.NegativeInfinity : TDecimal.PositiveInfinity; 545payload = TValue.Zero; 567TValue result = (decoded.Signed ? TDecimal.SignMask : TValue.Zero); 584return ((dpdBits & TDecimal.SignMask) != TValue.Zero) ? TDecimal.NegativeInfinity : TDecimal.PositiveInfinity; 622bool signed = (dpdBits & TDecimal.SignMask) != TValue.Zero; 631TValue trailing = TValue.Zero; 652TValue low = TValue.Zero; 737return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(coefficient.IsNegative, TValue.Zero, TDecimal.MinAdjustedExponent); 747: DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(coefficient.IsNegative, TValue.Zero, TDecimal.MinAdjustedExponent); 857payload = TValue.Zero; 932return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(zeroSign, TValue.Zero, zeroExponent); 990magnitudeHigh = TValue.Zero; 1005loRetained = TValue.Zero; 1063magnitudeHigh = TValue.Zero; 1069return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(false, TValue.Zero, commonExponent); 1075return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(false, TValue.Zero, commonExponent); 1179return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(resultSign, TValue.Zero, productExponent); 1231return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(value.Signed, TValue.Zero, value.UnbiasedExponent + constantExponent); 1341return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(bothNegative, TValue.Zero, Math.Min(productExponent, addendExponent)); 1388TValue bHigh = TValue.Zero; 1422return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(false, TValue.Zero, commonExponent); 1451return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(false, TValue.Zero, commonExponent); 1507return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(resultSign, TValue.Zero, TDecimal.MinAdjustedExponent); 1532return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(resultSign, TValue.Zero, a.UnbiasedExponent - b.UnbiasedExponent); 1608return NumberToDecimalIeee754BitsFromWide<TDecimal, TValue>(resultSign, TValue.Zero, quotient, quotientExponent, remainderNonZero); 1672return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(resultSign, TValue.Zero, resultExponent); 1780return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(resultSign, TValue.Zero, resultExponent); 1883return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(sign, TValue.Zero, idealExponent); 1901(TValue exactRoot, bool isPerfectSquare) = WideSqrt<TDecimal, TValue>(TValue.Zero, coefficient); 1912TValue high = TValue.Zero; 1917return NumberToDecimalIeee754BitsFromWide<TDecimal, TValue>(sign, TValue.Zero, root, idealExponent - guard, !exact); 1977quotient = TValue.Zero; 2079return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(a.Signed, TValue.Zero, zeroExponent); 2105return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(a.Signed, TValue.Zero, TDecimal.MinAdjustedExponent); 2115quotient = TValue.Zero; 2182return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(a.Signed, TValue.Zero, targetExponent); 2211quotient = TValue.Zero; 2345return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(signed: true, TValue.Zero, TDecimal.MinAdjustedExponent); 2449int bits = TValue.Zero.GetByteCount() * 8; 2458high = TValue.Zero; 2623TValue limit = (TValue.One << ((TValue.Zero.GetByteCount() * 8) / 2)) / ten; 2678int bits = TValue.Zero.GetByteCount() * 8; 2686TValue rem = TValue.Zero; 2754int limbBits = TValue.Zero.GetByteCount() * 8; 2757TValue root = TValue.Zero; 2758TValue remainder = TValue.Zero; 2843high = TValue.Zero; 2862high = TValue.Zero; 2900return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(sign, TValue.Zero, exponent); 2934return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(sign, TValue.Zero, TDecimal.MinAdjustedExponent); 3021TValue significand = ((leadDigit > 5) || ((leadDigit == 5) && restNonZero)) ? TValue.One : TValue.Zero; 3134if ((decimalBits & nanReservedMask) != TValue.Zero) 3144return (decimalBits & ~(TDecimal.SignMask | TDecimal.NaNMask)) == TValue.Zero; 3415return ((decimalBits & TDecimal.SignMask) != TValue.Zero) ? -1 : +1; 3445isNegative = (decimalBits & TDecimal.SignMask) != TValue.Zero; 3529return TInteger.Zero; 3573return TInteger.Zero; 3590return TInteger.Zero - TInteger.CreateTruncating(magnitude); 3634return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(sign, TValue.Zero, exponent); 3686bool isNegative = (decimalBits & TSourceDecimal.SignMask) != TSourceValue.Zero; 3702return DecimalIeee754FiniteNumberBinaryEncoding<TTargetDecimal, TTargetValue>(decoded.Signed, TTargetValue.Zero, decoded.UnbiasedExponent); 3719bool isNegative = (decimalBits & TDecimal.SignMask) != TValue.Zero; 3735return decoded.Signed ? -TFloat.Zero : TFloat.Zero; 3751result = TFloat.Zero; 3807if (value == TFloat.Zero) 3809return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(isNegative, TValue.Zero, 0);
src\runtime\src\libraries\System.Private.CoreLib\src\System\Number.DecimalIeee754.DiyFp128Conversions.cs (4)
105return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(signed, TValue.Zero, 0); 182return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(signed, TValue.Zero, TDecimal.MinAdjustedExponent); 198return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(signed, TValue.Zero, TDecimal.MinAdjustedExponent); 216return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(signed, TValue.Zero, exponent);
src\runtime\src\libraries\System.Private.CoreLib\src\System\Number.DecimalIeee754.Transcendental.cs (26)
148return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 184return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 220return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 491return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 709: DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(signed: false, TValue.Zero, 0); 724return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(resultNegative, TValue.Zero, 0); 735return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(resultNegative, TValue.Zero, 0); 796return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 903return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(xNegative, TValue.Zero, 0); 916return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(resultNegative, TValue.Zero, 0); 995return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1063return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1098TValue sinZero = DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1126bool signed = (x & TDecimal.SignMask) != TValue.Zero; 1146return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1180return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1331return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1399return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1443TValue sinZero = DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1471bool signed = (x & TDecimal.SignMask) != TValue.Zero; 1491return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1526return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1683return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1751return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1785return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0); 1860return DecimalIeee754FiniteNumberBinaryEncoding<TDecimal, TValue>(decoded.Signed, TValue.Zero, 0);
src\runtime\src\libraries\System.Private.CoreLib\src\System\Number.DiyFp.cs (1)
44Debug.Assert(value > TNumber.Zero);
src\runtime\src\libraries\System.Private.CoreLib\src\System\Number.Dragon4.cs (1)
25Debug.Assert(v > TNumber.Zero);
src\runtime\src\libraries\System.Private.CoreLib\src\System\Number.Grisu3.cs (1)
329Debug.Assert(v > TNumber.Zero);
src\runtime\src\libraries\System.Private.CoreLib\src\System\Number.Parsing.cs (17)
208TInteger n = TInteger.Zero; 238if (n > TInteger.Zero) 243else if (n < TInteger.Zero) 294result = TInteger.Zero; 415TInteger answer = TInteger.Zero; 508overflow |= TInteger.IsGreaterThanAsUnsigned(answer, TInteger.MaxValue + (isNegative ? TInteger.One : TInteger.Zero)); 568result = TInteger.Zero; 574result = TInteger.Zero; 666TInteger answer = TInteger.Zero; 771result = TInteger.Zero; 777result = TInteger.Zero; 1202result = TFloat.Zero; 1471result = isNegative ? TFloat.NegativeZero : TFloat.Zero; 1506result = isNegative ? TFloat.NegativeZero : TFloat.Zero; 1658result = TFloat.Zero; 1689result = TFloat.Zero; 1754result = TFloat.Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Number.Rounding.cs (4)
74TNumber zero = TNumber.Zero; 217hasRemainder = scaled != TUInt.Zero; 242hasRemainder = remainder != TUInt.Zero; 273TNumber zero = TNumber.Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Numerics\BFloat16.cs (1)
1392/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Numerics\IBinaryInteger.cs (3)
281TSelf result = TSelf.Zero; 304if (value == TSelf.Zero) 309return TSelf.IsNegative(value) ? TSelf.Zero : ((bitCount - TSelf.One) ^ TSelf.Log2(value));
src\runtime\src\libraries\System.Private.CoreLib\src\System\Numerics\IBinaryNumber.cs (1)
14static virtual TSelf AllBitsSet => ~TSelf.Zero;
src\runtime\src\libraries\System.Private.CoreLib\src\System\Numerics\INumber.cs (1)
205if (value != TSelf.Zero)
src\runtime\src\libraries\System.Private.CoreLib\src\System\Numerics\TotalOrderIeee754Comparer.cs (1)
380if ((x.Significand == TValue.Zero) && (x.Signed != y.Signed))
src\runtime\src\libraries\System.Private.CoreLib\src\System\Random.cs (7)
197if (T.MaxValue == T.Zero) 199return T.Zero; 334if (maxExclusive == T.Zero) 336return T.Zero; 441int significandBitLength = T.Zero.GetSignificandBitLength(); 451T value = T.Zero; 462Debug.Assert(value >= T.Zero && value < T.ScaleB(T.One, significandBitLength));
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\InteropServices\NFloat.cs (1)
1214/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\SByte.cs (1)
629/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Single.cs (1)
1051/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\UInt128.cs (1)
1475/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\UInt16.cs (1)
555/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\UInt32.cs (1)
620/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\UInt64.cs (1)
627/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\UIntPtr.cs (1)
626/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
System.Private.Windows.Core.TestUtilities (7)
ComparisonHelpers.cs (2)
14ArgumentOutOfRangeException.ThrowIfLessThan(variance, T.Zero); 22ArgumentOutOfRangeException.ThrowIfLessThan(variance, T.Zero);
XUnit\TestData.cs (5)
44T.Zero, 58= ImmutableArray.Create(T.MinValue == T.Zero 71T.Zero, 72T.Zero - T.One, 82T.Zero, T.MaxValue, T.One, T.MaxValue / (T.One + T.One)
System.Runtime.Numerics (103)
System\Numerics\Complex.cs (1)
519/// <inheritdoc cref="INumberBase{TSelf}.Zero" />
System\Numerics\Complex.Generic.cs (102)
26public static Complex<T> Zero => new(T.Zero, T.Zero); 27public static Complex<T> One => new(T.One, T.Zero); 28public static Complex<T> ImaginaryOne => new(T.Zero, T.One); 195a = T.CopySign(T.IsInfinity(a) ? T.One : T.Zero, a); 196b = T.CopySign(T.IsInfinity(b) ? T.One : T.Zero, b); 200c = T.CopySign(T.Zero, c); 205d = T.CopySign(T.Zero, d); 214c = T.CopySign(T.IsInfinity(c) ? T.One : T.Zero, c); 215d = T.CopySign(T.IsInfinity(d) ? T.One : T.Zero, d); 219a = T.CopySign(T.Zero, a); 224b = T.CopySign(T.Zero, b); 236a = T.CopySign(T.Zero, a); 241b = T.CopySign(T.Zero, b); 246c = T.CopySign(T.Zero, c); 251d = T.CopySign(T.Zero, d); 271return left * new Complex<T>(right, T.Zero); 276return new Complex<T>(left, T.Zero) * right; 322if ((c == T.Zero) && (d == T.Zero) && (!T.IsNaN(a) || !T.IsNaN(b))) 332a = T.CopySign(T.IsInfinity(a) ? T.One : T.Zero, a); 333b = T.CopySign(T.IsInfinity(b) ? T.One : T.Zero, b); 341c = T.CopySign(T.IsInfinity(c) ? T.One : T.Zero, c); 342d = T.CopySign(T.IsInfinity(d) ? T.One : T.Zero, d); 343x = T.Zero * ((a * c) + (b * d)); 344y = T.Zero * ((b * c) - (a * d)); 354return left / new Complex<T>(right, T.Zero); 361return new Complex<T>(left, T.Zero) / right; 374Debug.Assert((x >= T.Zero) || T.IsNaN(x)); 403if (value.m_real == T.Zero && value.m_imaginary == T.Zero) 478return (imaginary == T.Zero) ? new Complex<T>(real, imaginary) : new Complex<T>(T.NaN, T.NaN); 482if (imaginary == T.Zero) 502return (real == T.Zero) ? new Complex<T>(real, T.NaN) : new Complex<T>(T.NaN, T.NaN); 522if (bPrime < T.Zero) 531if (value.Real < T.Zero) 536if (value.Imaginary < T.Zero) 557T.IsNaN(absB) ? T.NaN : T.Zero; 561if (absB == T.Zero) 607return (imaginary == T.Zero) ? new Complex<T>(T.NaN, imaginary) : new Complex<T>(T.NaN, T.NaN); 611if (imaginary == T.Zero) 614T imag = (T.IsNegative(real) ^ T.IsNegative(imaginary)) ? -T.Zero : T.Zero; 632return (real == T.Zero) ? new Complex<T>(T.NaN, T.CopySign(T.Zero, real)) : new Complex<T>(T.NaN, T.NaN); 649if (bPrime < T.Zero) 658if (value.Real < T.Zero) 663if (value.Imaginary > T.Zero) 688re = T.IsInfinity(absY) ? T.Pi / T.CreateChecked(4) : T.IsNaN(absY) ? T.NaN : T.Zero; 709re = (x == T.Zero) ? T.Pi / T.CreateChecked(2) : T.NaN; 768return (imaginary == T.Zero) ? new Complex<T>(real, imaginary) : new Complex<T>(T.NaN, T.NaN); 778return new Complex<T>(re, T.CopySign(T.Zero, sin * cos)); 780return new Complex<T>(re, T.CopySign(T.Zero, imaginary)); 786return (real == T.Zero) ? new Complex<T>(real, T.NaN) : new Complex<T>(T.NaN, T.NaN); 803Complex<T> two = new(T.CreateChecked(2), T.Zero); 818re = T.Zero; 824re = T.IsInfinity(absB) ? T.Zero : T.NaN; 833re = T.Zero; 838re = (a == T.Zero) ? a : T.NaN; 855Debug.Assert((x >= T.Zero) || T.IsNaN(x)); 856Debug.Assert((y >= T.Zero) || T.IsNaN(y)); 944return Log(value) / Log(new Complex<T>(baseValue, T.Zero)); 970return new Complex<T>(T.Zero, T.Zero); 976if (imaginary == T.Zero) 993return (imaginary == T.Zero) ? new Complex<T>(T.NaN, imaginary) : new Complex<T>(T.NaN, T.NaN); 1025return new Complex<T>(T.Zero, T.CopySign(T.PositiveInfinity, imaginary)); 1029return new Complex<T>(T.PositiveInfinity, T.IsNaN(imaginary) ? T.NaN : T.CopySign(T.Zero, imaginary)); 1038if (imaginary == T.Zero) 1043return new Complex<T>(T.Zero, T.CopySign(T.Sqrt(-real), imaginary)); 1046return new Complex<T>(T.Sqrt(real), T.CopySign(T.Zero, imaginary)); 1066if (realCopy >= T.Zero) 1074if (imaginaryCopy < T.Zero) 1130return Pow(value, new Complex<T>(power, T.Zero)); 1146return new Complex<T>(value, T.Zero); 1248public static bool IsComplexNumber(Complex<T> value) => (value.m_real != T.Zero) && (value.m_imaginary != T.Zero); 1251public static bool IsEvenInteger(Complex<T> value) => (value.m_imaginary == T.Zero) && T.IsEvenInteger(value.m_real); 1254public static bool IsImaginaryNumber(Complex<T> value) => (value.m_real == T.Zero) && T.IsRealNumber(value.m_imaginary); 1257public static bool IsInteger(Complex<T> value) => (value.m_imaginary == T.Zero) && T.IsInteger(value.m_real); 1265return (value.m_imaginary == T.Zero) && T.IsNegative(value.m_real); 1274return (value.m_imaginary == T.Zero) && T.IsNegativeInfinity(value.m_real); 1284&& ((value.m_imaginary == T.Zero) || T.IsNormal(value.m_imaginary)); 1288public static bool IsOddInteger(Complex<T> value) => (value.m_imaginary == T.Zero) && T.IsOddInteger(value.m_real); 1296return (value.m_imaginary == T.Zero) && T.IsPositive(value.m_real); 1305return (value.m_imaginary == T.Zero) && T.IsPositiveInfinity(value.m_real); 1309public static bool IsRealNumber(Complex<T> value) => (value.m_imaginary == T.Zero) && T.IsRealNumber(value.m_real); 1321static bool INumberBase<Complex<T>>.IsZero(Complex<T> value) => (value.m_real == T.Zero) && (value.m_imaginary == T.Zero); 1651result = new Complex<T>((T)(object)value, T.Zero); 1664result = new Complex<T>(realResult, T.Zero); 1670result = new Complex<T>(realResult2, T.Zero); 1683result = new Complex<T>((T)(object)value, T.Zero); 1696result = new Complex<T>(realResult, T.Zero); 1702result = new Complex<T>(realResult2, T.Zero); 1715result = new Complex<T>((T)(object)value, T.Zero); 1728result = new Complex<T>(realResult, T.Zero); 1734result = new Complex<T>(realResult2, T.Zero); 1787result = (TOther)(object)((value.m_imaginary != T.Zero) ? T.NaN : value.m_real); 1799if (value.m_imaginary != T.Zero) 1811if (value.m_imaginary != T.Zero) 2065static Complex<T> ISignedNumber<Complex<T>>.NegativeOne => new(-T.One, T.Zero);