|
@@ -8,8 +8,13 @@
|
|
|
int e = snprintf(s, n, format, v); \
|
|
|
return e < 0 ? 0 : static_cast<size_t>(e); \
|
|
|
}
|
|
|
+#define TO_STRING_LINK(from, to) \
|
|
|
+ size_t Core::toString(from v, char* s, size_t n) { \
|
|
|
+ return toString(static_cast<to>(v), s, n); \
|
|
|
+ }
|
|
|
|
|
|
TO_STRING(char, "%c")
|
|
|
+TO_STRING_LINK(signed char, char)
|
|
|
TO_STRING(short, "%hd")
|
|
|
TO_STRING(int, "%d")
|
|
|
TO_STRING(long, "%ld")
|
|
@@ -21,21 +26,15 @@ TO_STRING(unsigned long, "%lu")
|
|
|
TO_STRING(unsigned long long, "%llu")
|
|
|
TO_STRING(double, "%.2f")
|
|
|
TO_STRING(const char*, "%s")
|
|
|
+TO_STRING_LINK(char*, const char*)
|
|
|
TO_STRING(const unsigned char*, "%s")
|
|
|
+TO_STRING_LINK(unsigned char*, const unsigned char*)
|
|
|
|
|
|
size_t Core::toString(float v, char* s, size_t n) {
|
|
|
int e = snprintf(s, n, "%.2f", static_cast<double>(v));
|
|
|
return e < 0 ? 0 : static_cast<size_t>(e);
|
|
|
}
|
|
|
|
|
|
-size_t Core::toString(char* v, char* s, size_t n) {
|
|
|
- return toString(static_cast<const char*>(v), s, n);
|
|
|
-}
|
|
|
-
|
|
|
-size_t Core::toString(unsigned char* v, char* s, size_t n) {
|
|
|
- return toString(static_cast<const unsigned char*>(v), s, n);
|
|
|
-}
|
|
|
-
|
|
|
size_t Core::toString(bool v, char* s, size_t n) {
|
|
|
int e = snprintf(s, n, "%s", v ? "true" : "false");
|
|
|
return e < 0 ? 0 : static_cast<size_t>(e);
|