String: Remove old NO_USE_STDLIB code path
We're using the standard library in many core classes by now so this code path no longer makes sense.
This commit is contained in:
parent
2a9c4a59df
commit
b033dff983
1 changed files with 1 additions and 91 deletions
|
@ -39,12 +39,9 @@
|
||||||
#include "core/string/ucaps.h"
|
#include "core/string/ucaps.h"
|
||||||
#include "core/variant/variant.h"
|
#include "core/variant/variant.h"
|
||||||
|
|
||||||
#include <cstdint>
|
|
||||||
|
|
||||||
#ifndef NO_USE_STDLIB
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#endif
|
#include <cstdint>
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
#define _CRT_SECURE_NO_WARNINGS // to disable build-time warning which suggested to use strcpy_s instead strcpy
|
#define _CRT_SECURE_NO_WARNINGS // to disable build-time warning which suggested to use strcpy_s instead strcpy
|
||||||
|
@ -1393,7 +1390,6 @@ String String::num(double p_num, int p_decimals) {
|
||||||
return "inf";
|
return "inf";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#ifndef NO_USE_STDLIB
|
|
||||||
|
|
||||||
if (p_decimals < 0) {
|
if (p_decimals < 0) {
|
||||||
p_decimals = 14;
|
p_decimals = 14;
|
||||||
|
@ -1466,87 +1462,6 @@ String String::num(double p_num, int p_decimals) {
|
||||||
}
|
}
|
||||||
|
|
||||||
return buf;
|
return buf;
|
||||||
#else
|
|
||||||
|
|
||||||
String s;
|
|
||||||
String sd;
|
|
||||||
/* integer part */
|
|
||||||
|
|
||||||
bool neg = p_num < 0;
|
|
||||||
p_num = ABS(p_num);
|
|
||||||
int intn = (int)p_num;
|
|
||||||
|
|
||||||
/* decimal part */
|
|
||||||
|
|
||||||
if (p_decimals > 0 || (p_decimals == -1 && (int)p_num != p_num)) {
|
|
||||||
double dec = p_num - (double)((int)p_num);
|
|
||||||
|
|
||||||
int digit = 0;
|
|
||||||
if (p_decimals > MAX_DECIMALS) {
|
|
||||||
p_decimals = MAX_DECIMALS;
|
|
||||||
}
|
|
||||||
|
|
||||||
int dec_int = 0;
|
|
||||||
int dec_max = 0;
|
|
||||||
|
|
||||||
while (true) {
|
|
||||||
dec *= 10.0;
|
|
||||||
dec_int = dec_int * 10 + (int)dec % 10;
|
|
||||||
dec_max = dec_max * 10 + 9;
|
|
||||||
digit++;
|
|
||||||
|
|
||||||
if (p_decimals == -1) {
|
|
||||||
if (digit == MAX_DECIMALS) { //no point in going to infinite
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (dec - (double)((int)dec) < 1e-6) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (digit == p_decimals) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dec *= 10;
|
|
||||||
int last = (int)dec % 10;
|
|
||||||
|
|
||||||
if (last > 5) {
|
|
||||||
if (dec_int == dec_max) {
|
|
||||||
dec_int = 0;
|
|
||||||
intn++;
|
|
||||||
} else {
|
|
||||||
dec_int++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
String decimal;
|
|
||||||
for (int i = 0; i < digit; i++) {
|
|
||||||
char num[2] = { 0, 0 };
|
|
||||||
num[0] = '0' + dec_int % 10;
|
|
||||||
decimal = num + decimal;
|
|
||||||
dec_int /= 10;
|
|
||||||
}
|
|
||||||
sd = '.' + decimal;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (intn == 0)
|
|
||||||
|
|
||||||
s = "0";
|
|
||||||
else {
|
|
||||||
while (intn) {
|
|
||||||
char32_t num = '0' + (intn % 10);
|
|
||||||
intn /= 10;
|
|
||||||
s = num + s;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
s = s + sd;
|
|
||||||
if (neg)
|
|
||||||
s = "-" + s;
|
|
||||||
return s;
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
String String::num_int64(int64_t p_num, int base, bool capitalize_hex) {
|
String String::num_int64(int64_t p_num, int base, bool capitalize_hex) {
|
||||||
|
@ -1733,7 +1648,6 @@ String String::num_scientific(double p_num) {
|
||||||
return "inf";
|
return "inf";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#ifndef NO_USE_STDLIB
|
|
||||||
|
|
||||||
char buf[256];
|
char buf[256];
|
||||||
|
|
||||||
|
@ -1756,10 +1670,6 @@ String String::num_scientific(double p_num) {
|
||||||
buf[255] = 0;
|
buf[255] = 0;
|
||||||
|
|
||||||
return buf;
|
return buf;
|
||||||
#else
|
|
||||||
|
|
||||||
return String::num(p_num);
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
String String::md5(const uint8_t *p_md5) {
|
String String::md5(const uint8_t *p_md5) {
|
||||||
|
|
Loading…
Reference in a new issue