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

◆ TryRoundWeedShortest()

static bool System.Number.Grisu3.TryRoundWeedShortest ( Span< byte > buffer,
int length,
ulong distanceTooHighW,
ulong unsafeInterval,
ulong rest,
ulong tenKappa,
ulong unit )
inlinestaticprivate

Definition at line 1095 of file Number.cs.

1096 {
1097 ulong num = distanceTooHighW - unit;
1098 ulong num2 = distanceTooHighW + unit;
1099 while (rest < num && unsafeInterval - rest >= tenKappa && (rest + tenKappa < num || num - rest >= rest + tenKappa - num))
1100 {
1101 buffer[length - 1]--;
1102 rest += tenKappa;
1103 }
1104 if (rest < num2 && unsafeInterval - rest >= tenKappa && (rest + tenKappa < num2 || num2 - rest > rest + tenKappa - num2))
1105 {
1106 return false;
1107 }
1108 if (2 * unit <= rest)
1109 {
1110 return rest <= unsafeInterval - 4 * unit;
1111 }
1112 return false;
1113 }

References System.buffer, and System.length.

Referenced by System.Number.Grisu3.TryDigitGenShortest().