Add std::string format functions

pull/91/head
Jonathan G Rennison 5 years ago
parent b8820ded59
commit 68dbbf5945

@ -167,6 +167,28 @@ char *CDECL str_fmt(const char *str, ...)
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
* 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 *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);

Loading…
Cancel
Save