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

◆ FormatGeneral()

static unsafe void System.Number.FormatGeneral ( ref ValueStringBuilder sb,
ref NumberBuffer number,
int nMaxDigits,
NumberFormatInfo info,
char expChar,
bool bSuppressScientific )
inlinestaticprivate

Definition at line 3315 of file Number.cs.

3316 {
3317 int i = number.Scale;
3318 bool flag = false;
3319 if (!bSuppressScientific && (i > nMaxDigits || i < -3))
3320 {
3321 i = 1;
3322 flag = true;
3323 }
3324 byte* digitsPointer = number.GetDigitsPointer();
3325 if (i > 0)
3326 {
3327 do
3328 {
3329 sb.Append((char)((*digitsPointer != 0) ? (*(digitsPointer++)) : 48));
3330 }
3331 while (--i > 0);
3332 }
3333 else
3334 {
3335 sb.Append('0');
3336 }
3337 if (*digitsPointer != 0 || i < 0)
3338 {
3339 sb.Append(info.NumberDecimalSeparator);
3340 for (; i < 0; i++)
3341 {
3342 sb.Append('0');
3343 }
3344 while (*digitsPointer != 0)
3345 {
3346 sb.Append((char)(*(digitsPointer++)));
3347 }
3348 }
3349 if (flag)
3350 {
3351 FormatExponent(ref sb, info, number.Scale - 1, expChar, 2, positiveSign: true);
3352 }
3353 }
static unsafe void FormatExponent(ref ValueStringBuilder sb, NumberFormatInfo info, int value, char expChar, int minDigits, bool positiveSign)
Definition Number.cs:3298

References System.Number.FormatExponent(), and System.info.

Referenced by System.Number.NumberToString().