Add std::string format functions
This commit is contained in:
@@ -167,6 +167,28 @@ char *CDECL str_fmt(const char *str, ...)
|
|||||||
return output;
|
return output;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::string stdstr_vfmt(const char *str, va_list va)
|
||||||
|
{
|
||||||
|
char buf[4096];
|
||||||
|
|
||||||
|
int len = vseprintf(buf, lastof(buf), str, va);
|
||||||
|
return std::string(buf, len);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Format, "printf", into a std::string.
|
||||||
|
* @param str The formatting string.
|
||||||
|
* @return The formatted string.
|
||||||
|
*/
|
||||||
|
std::string CDECL stdstr_fmt(const char *str, ...)
|
||||||
|
{
|
||||||
|
va_list va;
|
||||||
|
va_start(va, str);
|
||||||
|
std::string output = stdstr_vfmt(str, va);
|
||||||
|
va_end(va);
|
||||||
|
return output;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Scan the string for old values of SCC_ENCODED and fix it to
|
* Scan the string for old values of SCC_ENCODED and fix it to
|
||||||
* it's new, static value.
|
* it's new, static value.
|
||||||
|
@@ -40,6 +40,8 @@ int CDECL vseprintf(char *str, const char *last, const char *format, va_list ap)
|
|||||||
|
|
||||||
char *CDECL str_fmt(const char *str, ...) WARN_FORMAT(1, 2);
|
char *CDECL str_fmt(const char *str, ...) WARN_FORMAT(1, 2);
|
||||||
char *str_vfmt(const char *str, va_list ap);
|
char *str_vfmt(const char *str, va_list ap);
|
||||||
|
std::string CDECL stdstr_fmt(const char *str, ...) WARN_FORMAT(1, 2);
|
||||||
|
std::string stdstr_vfmt(const char *str, va_list va);
|
||||||
|
|
||||||
char *str_validate_intl(char *str, const char *last, StringValidationSettings settings);
|
char *str_validate_intl(char *str, const char *last, StringValidationSettings settings);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user