From 6b1677807c5a4ad0dc6cb81a13cb36d92eead6aa Mon Sep 17 00:00:00 2001 From: Branimir Karadzic Date: Sun, 25 Nov 2012 18:49:40 -0800 Subject: [PATCH] Fixed includes. --- include/bx/string.h | 151 ++++++++++++++++++++++---------------------- 1 file changed, 76 insertions(+), 75 deletions(-) diff --git a/include/bx/string.h b/include/bx/string.h index 48b9e28..27c0a3f 100644 --- a/include/bx/string.h +++ b/include/bx/string.h @@ -1,28 +1,29 @@ -/* - * Copyright 2010-2012 Branimir Karadzic. All rights reserved. - * License: http://www.opensource.org/licenses/BSD-2-Clause - */ - -#ifndef __BX_PRINTF_H__ -#define __BX_PRINTF_H__ - -#include "bx.h" -#include -#include // va_list -#include - -namespace bx -{ - inline int32_t stricmp(const char* _a, const char* _b) - { -#if BX_COMPILER_MSVC - return _stricmp(_a, _b); -#else - return strcasecmp(_a, _b); -#endif // BX_COMPILER_ - } - - /// Find new line. Returns pointer after new line terminator. +/* + * Copyright 2010-2012 Branimir Karadzic. All rights reserved. + * License: http://www.opensource.org/licenses/BSD-2-Clause + */ + +#ifndef __BX_PRINTF_H__ +#define __BX_PRINTF_H__ + +#include "bx.h" +#include +#include // va_list +#include +#include + +namespace bx +{ + inline int32_t stricmp(const char* _a, const char* _b) + { +#if BX_COMPILER_MSVC + return _stricmp(_a, _b); +#else + return strcasecmp(_a, _b); +#endif // BX_COMPILER_ + } + + /// Find new line. Returns pointer after new line terminator. inline const char* strnl(const char* _str) { const char* eol = strstr(_str, "\n\r"); @@ -101,53 +102,53 @@ namespace bx return NULL; } - - /// Cross platform implementation of vsnprintf that returns number of - /// characters which would have been written to the final string if - /// enough space had been available. - inline int32_t vsnprintf(char* _str, size_t _size, const char* _format, va_list _argList) - { -#if BX_COMPILER_MSVC - int32_t len = ::vsnprintf(_str, _size, _format, _argList); - return -1 == len ? ::_vscprintf(_format, _argList) : len; -#else - return ::vsnprintf(_str, _size, _format, _argList); -#endif // BX_COMPILER_MSVC - } - - inline int32_t snprintf(char* _str, size_t _size, const char* _format, ...) BX_PRINTF_ARGS(3, 4) - { - va_list argList; - va_start(argList, _format); - int32_t len = vsnprintf(_str, _size, _format, argList); - va_end(argList); - return len; - } - - inline std::string stringPrintfVargs(const char* _format, va_list _argList) - { - char temp[2048]; - - char* out = temp; - int32_t len = bx::vsnprintf(out, sizeof(temp), _format, _argList); - if ( (int32_t)sizeof(temp) < len) - { - out = (char*)alloca(len+1); - len = bx::vsnprintf(out, len, _format, _argList); - } - out[len] = '\0'; - - return out; - } - - inline std::string stringPrintf(const char* _format, ...) - { - va_list argList; - va_start(argList, _format); - std::string str = stringPrintfVargs(_format, argList); - va_end(argList); - return str; - } -} // namespace bx - -#endif // __BX_PRINTF_H__ + + /// Cross platform implementation of vsnprintf that returns number of + /// characters which would have been written to the final string if + /// enough space had been available. + inline int32_t vsnprintf(char* _str, size_t _size, const char* _format, va_list _argList) + { +#if BX_COMPILER_MSVC + int32_t len = ::vsnprintf(_str, _size, _format, _argList); + return -1 == len ? ::_vscprintf(_format, _argList) : len; +#else + return ::vsnprintf(_str, _size, _format, _argList); +#endif // BX_COMPILER_MSVC + } + + inline int32_t snprintf(char* _str, size_t _size, const char* _format, ...) // BX_PRINTF_ARGS(3, 4) + { + va_list argList; + va_start(argList, _format); + int32_t len = vsnprintf(_str, _size, _format, argList); + va_end(argList); + return len; + } + + inline std::string stringPrintfVargs(const char* _format, va_list _argList) + { + char temp[2048]; + + char* out = temp; + int32_t len = bx::vsnprintf(out, sizeof(temp), _format, _argList); + if ( (int32_t)sizeof(temp) < len) + { + out = (char*)alloca(len+1); + len = bx::vsnprintf(out, len, _format, _argList); + } + out[len] = '\0'; + + return out; + } + + inline std::string stringPrintf(const char* _format, ...) + { + va_list argList; + va_start(argList, _format); + std::string str = stringPrintfVargs(_format, argList); + va_end(argList); + return str; + } +} // namespace bx + +#endif // __BX_PRINTF_H__