5 #ifndef _INC_StrConst_H
6 #define _INC_StrConst_H
23 #define _GT(x) __TOW(x)
27 #define _GT(x) __TOA(x)
30 #define _GTNPST(c,p) _GTN(c)##p
33 #define STRMAX(x) ((StrLen_t)(_countof(x)-1))
36 #define STRLIT2(s) (s), STRMAX(s)
49 static const char k_EmptyA =
'\0';
50 static const wchar_t k_EmptyW =
'\0';
58 operator const char*()
const noexcept
62 operator const wchar_t*()
const noexcept
85 return(m_A ==
nullptr);
89 #define CSTRCONST(t) cStrConst(t,__TOW(t))
#define GRAYCORE_LINK
Definition: GrayCore.h:47
Definition: StrConst.h:39
const wchar_t * m_W
Definition: StrConst.h:45
static const cStrConst k_Empty
Empty cStrConst string. like CString::m_Nil.
Definition: StrConst.h:52
const char * get_StrA() const noexcept
Definition: StrConst.h:66
cStrConst(const char *a, const wchar_t *w) noexcept
Definition: StrConst.h:55
bool isNull() const noexcept
Definition: StrConst.h:83
const GChar_t * get_CPtr() const noexcept
Definition: StrConst.h:74
const wchar_t * get_StrW() const noexcept
Definition: StrConst.h:70
const char * m_A
Definition: StrConst.h:44
< The main namespace for all Core functions.
Definition: GrayCore.cpp:14
const StrLen_t k_StrLen_UNK
use the default/current length of the string argument.
Definition: StrConst.h:34
int StrLen_t
the length of a string in chars (bytes for UTF8, wchar_t for UNICODE). or offset in characters....
Definition: StrConst.h:32
char ATOMCHAR_t
the char form (UNICODE or not) for an atom. (for symbolic names)
Definition: StrConst.h:15
char GChar_t
My version of TCHAR, _TCHAR.
Definition: StrConst.h:26