4 #ifndef __LOGOG_STRING_HPP__
5 #define __LOGOG_STRING_HPP__
20 #define L0 (const LOGOG_CHAR *)'\0'
21 #define LNULL (const LOGOG_CHAR *)'\0'
22 #define L__null (const LOGOG_CHAR *)'\0'
25 #define LOGOG_CONST_STRING_INDIRECT(x) L ## x
27 #define LOGOG_CONST_STRING(x) LOGOG_CONST_STRING_INDIRECT(x)
28 #define LOGOG_COUT std::wcout
29 #define LOGOG_CERR std::wcerr
31 #else // LOGOG_UNICODE
38 #define LOGOG_CONST_STRING(x) (x)
39 #define LOGOG_COUT std::cout
40 #define LOGOG_CERR std::cerr
41 #endif // LOGOG_UNICODE
46 #ifndef LOGOG_USE_PREFIX
53 #define _LG( x ) LOGOG_CONST_STRING( x )
62 static const size_t npos = (size_t) -1;
75 virtual size_t reserve(
size_t nSize );
82 virtual size_t assign(
const int value );
101 #define LOGOG_MAX( a, b ) ( ( a > b ) ? a : b )
113 #define LOGOG_STRING ::logog::String
115 #endif // __LOGOG_STRING_HPP_
virtual size_t assign(const String &other)
[Thread]
Definition: api.hpp:8
size_t * m_pKMP
Definition: string.hpp:108
virtual void reverse(LOGOG_CHAR *pStart, LOGOG_CHAR *pEnd)
size_t BM(LOGOG_CHAR *y, size_t n)
static const size_t npos
Definition: string.hpp:62
size_t KMP(const LOGOG_CHAR *y, size_t n)
LOGOG_CHAR * m_pEndOfBuffer
Definition: string.hpp:107
virtual void format_va(const LOGOG_CHAR *cFormatString, va_list args)
LOGOG_CHAR * m_pOffset
Definition: string.hpp:106
Definition: string.hpp:58
static size_t Length(const LOGOG_CHAR *chars)
virtual const LOGOG_CHAR * c_str() const
wchar_t LOGOG_CHAR
Definition: string.hpp:14
virtual bool is_valid() const
String & operator=(const String &other)
bool m_bIsConst
Definition: string.hpp:109
virtual size_t find(String &other) const
virtual size_t reserve(size_t nSize)
virtual void format(const LOGOG_CHAR *cFormatString,...)
virtual size_t append(const String &other)
Definition: object.hpp:47
virtual void Initialize()
LOGOG_CHAR * m_pBuffer
Definition: string.hpp:105
virtual size_t reserve_for_int()