23 #if defined (_STLP_MSVC) || defined (__ICL) 31 #if defined (_STLP_USE_SAFE_STRING_FUNCTIONS) 32 # define _STLP_STRCPY(D, DS, S) strcpy_s(D, DS, S) 33 # define _STLP_STRNCPY(D, DS, S, C) strncpy_s(D, DS, S, C) 34 # define _STLP_STRCAT(D, DS, S) strcat_s(D, DS, S) 36 # define _STLP_STRCPY(D, DS, S) strcpy(D, S) 37 # define _STLP_STRNCPY(D, DS, S, C) strncpy(D, S, C) 38 # define _STLP_STRCAT(D, DS, S) strcat(D, S) 41 #if defined (__cplusplus) 59 #define MAX_LANG_LEN 64 60 #define MAX_CTRY_LEN 64 61 #define MAX_MODIFIER_LEN 0 62 #define MAX_LC_LEN (MAX_LANG_LEN+MAX_CTRY_LEN+MAX_MODIFIER_LEN+3) 66 #if !defined (LANG_INVARIANT) 67 # define LANG_INVARIANT 0x7f 68 # define _STLP_LANG_INVARIANT_DEFINED 72 # define CP_UTF7 65000 76 # define CP_UTF8 65001 79 #define INVARIANT_LCID MAKELCID(MAKELANGID(LANG_INVARIANT, SUBLANG_NEUTRAL), SORT_DEFAULT) 86 {
"american english",
"ENU"},
87 {
"american-english",
"ENU"},
88 {
"australian",
"ENA"},
94 {
"chinese-hongkong",
"ZHH"},
95 {
"chinese-simplified",
"CHS"},
96 {
"chinese-singapore",
"ZHI"},
97 {
"chinese-traditional",
"CHT"},
98 {
"dutch-belgian",
"NLB"},
99 {
"english-american",
"ENU"},
100 {
"english-aus",
"ENA"},
101 {
"english-belize",
"ENL"},
102 {
"english-can",
"ENC"},
103 {
"english-caribbean",
"ENB"},
104 {
"english-ire",
"ENI"},
105 {
"english-jamaica",
"ENJ"},
106 {
"english-nz",
"ENZ"},
107 {
"english-south africa",
"ENS"},
108 {
"english-trinidad y tobago",
"ENT"},
109 {
"english-uk",
"ENG"},
110 {
"english-us",
"ENU"},
111 {
"english-usa",
"ENU"},
112 {
"french-belgian",
"FRB"},
113 {
"french-canadian",
"FRC"},
114 {
"french-luxembourg",
"FRL"},
115 {
"french-swiss",
"FRS"},
116 {
"german-austrian",
"DEA"},
117 {
"german-lichtenstein",
"DEC"},
118 {
"german-luxembourg",
"DEL"},
119 {
"german-swiss",
"DES"},
120 {
"irish-english",
"ENI"},
121 {
"italian-swiss",
"ITS"},
122 {
"norwegian",
"NOR"},
123 {
"norwegian-bokmal",
"NOR"},
124 {
"norwegian-nynorsk",
"NON"},
125 {
"portuguese-brazilian",
"PTB"},
126 {
"spanish-argentina",
"ESS"},
127 {
"spanish-bolivia",
"ESB"},
128 {
"spanish-chile",
"ESL"},
129 {
"spanish-colombia",
"ESO"},
130 {
"spanish-costa rica",
"ESC"},
131 {
"spanish-dominican republic",
"ESD"},
132 {
"spanish-ecuador",
"ESF"},
133 {
"spanish-el salvador",
"ESE"},
134 {
"spanish-guatemala",
"ESG"},
135 {
"spanish-honduras",
"ESH"},
136 {
"spanish-mexican",
"ESM"},
137 {
"spanish-modern",
"ESN"},
138 {
"spanish-nicaragua",
"ESI"},
139 {
"spanish-panama",
"ESA"},
140 {
"spanish-paraguay",
"ESZ"},
141 {
"spanish-peru",
"ESR"},
142 {
"spanish-puerto rico",
"ESU"},
143 {
"spanish-uruguay",
"ESY"},
144 {
"spanish-venezuela",
"ESV"},
145 {
"swedish-finland",
"SVF"},
159 {
"great britain",
"GBR"},
161 {
"hong-kong",
"HKG"},
162 {
"new-zealand",
"NZL"},
166 {
"puerto-rico",
"PRI"},
168 {
"south africa",
"ZAF"},
169 {
"south korea",
"KOR"},
170 {
"south-africa",
"ZAF"},
171 {
"south-korea",
"KOR"},
172 {
"trinidad & tobago",
"TTO"},
174 {
"united-kingdom",
"GBR"},
175 {
"united-states",
"USA"},
245 static char*
__ConvertToCP(
int from_cp,
int to_cp,
const char *
from,
size_t size,
size_t *ret_buf_size);
255 for (; __x != 0; __x /= 10)
256 *
ptr++ = (
char)(__x % 10) +
'0';
263 #if defined (__cplusplus) 269 {
return (ltype != 0) ? <ype->
lc : 0; }
271 {
return (lnumeric != 0) ? &lnumeric->
lc : 0; }
273 {
return (ltime != 0) ? <ime->
lc : 0; }
275 {
return (lcollate != 0) ? &lcollate->
lc : 0; }
277 {
return (lmonetary != 0) ? &lmonetary->
lc : 0; }
283 #define MAP(x, y) if ((mask & x) != 0) ret |= (y) 285 unsigned short ret = 0;
307 unsigned char Buffer[256];
322 #if defined (__BORLANDC__) 324 { ltype->
lc.
id = 0x409; }
327 ltype->
cp =
atoi(cp_name);
332 for (
i = 0;
i < 256; ++
i)
Buffer[
i] = (
unsigned char)
i;
341 if ((
UINT)NativeCP != ltype->
cp) {
358 unsigned short ctable[256];
359 unsigned char TargetBuffer[256];
374 for (
i = 0;
i < 256; ++
i) {
375 if (!TargetBuffer[
i])
continue;
389 char *GroupingBuffer;
399 #if defined (__BORLANDC__) 404 #if defined (__BORLANDC__) 429 const char *cur_char;
430 char *cur_output, *end_output;
435 end_output = cur_output + buf_size;
438 if (cur_output && (cur_output == end_output))
break;
442 if (*(cur_char + 1) ==
'd') {
443 if (cur_output && (cur_output + 2 > end_output)) {
447 if (*(cur_char + 2) ==
'd') {
448 if (*(cur_char + 3) ==
'd') {
449 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'A'; }
454 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'a'; }
460 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'd'; }
466 if (cur_output && (cur_output + 3 > end_output)) {
470 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'#'; *(cur_output++) =
'd'; }
477 if (*(cur_char + 1) ==
'M') {
478 if (cur_output && (cur_output + 2 > end_output)) {
482 if (*(cur_char + 2) ==
'M') {
483 if (*(cur_char + 3) ==
'M') {
484 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'B'; }
489 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'b'; }
495 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'm'; }
501 if (cur_output && (cur_output + 3 > end_output)) {
505 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'#'; *(cur_output++) =
'm'; }
512 if (*(cur_char + 1) ==
'y') {
513 if (cur_output && (cur_output + 2 > end_output)) {
517 if (*(cur_char + 2) ==
'y' && *(cur_char + 3) ==
'y') {
518 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'Y'; }
523 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'y'; }
529 if (cur_output && (cur_output + 3 > end_output)) {
533 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'#'; *(cur_output++) =
'y'; }
540 if (cur_output && (cur_output + 2 > end_output)) {
544 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'%'; }
551 while (*cur_char !=
'\'' && *cur_char != 0 && (cur_output ==
NULL || cur_output != end_output)) {
552 if (cur_output) { *cur_output++ = *cur_char; }
560 if (cur_output) { *(cur_output++) = *cur_char; }
565 if (*cur_char == 0)
break;
569 if (!cur_output || cur_output != end_output) {
570 if (cur_output) *cur_output = 0;
582 const char *cur_char;
583 char *cur_output, *end_output;
586 end_output = cur_output + buf_size;
591 if (*(cur_char + 1) ==
'h') {
592 if (cur_output && (cur_output + 2 > end_output)) {
596 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'I'; }
601 if (cur_output && (cur_output + 3 > end_output)) {
605 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'#'; *(cur_output++) =
'I'; }
610 if (*(cur_char + 1) ==
'H') {
611 if (cur_output && (cur_output + 2 > end_output)) {
615 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'H'; }
620 if (cur_output && (cur_output + 3 > end_output)) {
624 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'#'; *(cur_output++) =
'H'; }
629 if (*(cur_char + 1) ==
'm') {
630 if (cur_output && (cur_output + 2 > end_output)) {
634 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'M'; }
639 if (cur_output && (cur_output + 3 > end_output)) {
643 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'#'; *(cur_output++) =
'M'; }
648 if (*(cur_char + 1) ==
's') {
649 if (cur_output && (cur_output + 2 > end_output)) {
653 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'S'; }
658 if (cur_output && (cur_output + 3 > end_output)) {
662 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'#'; *(cur_output++) =
'S'; }
667 if (*(cur_char + 1) ==
't')
669 if (cur_output && (cur_output + 2 > end_output)) {
673 if (cur_output) { *(cur_output++) =
'%'; *(cur_output++) =
'p'; }
677 if (cur_output && (cur_output + 2 > end_output)) {
681 if (cur_output) { *(cur_output++)=
'%'; *(cur_output++)=
'%'; }
686 while (*cur_char !=
'\'' && *cur_char != 0 && (!cur_output || (cur_output != end_output))) {
687 if (cur_output) *cur_output++ = *cur_char;
693 if (cur_output) { *(cur_output++) = *cur_char; }
697 if (*cur_char == 0)
break;
701 if (!cur_output || cur_output != end_output) {
702 if (cur_output) *cur_output = 0;
727 #if defined (__BORLANDC__) 729 { ltime->
lc.
id = 0x409; }
819 #if defined (__BORLANDC__) 821 { lcol->
lc.
id = 0x409; }
828 char *GroupingBuffer;
953 for (
i = 0;
i < 12; ++
i) {
958 for (
i = 0;
i < 7; ++
i) {
991 if (cname == 0 || (cname[0] ==
'C' && cname[1] == 0)) {
1019 if (cname[0] ==
'L' && cname[1] ==
'C' && cname[2] ==
'_') {
1022 if (cname[0] ==
'C' && cname[1] == 0) {
1036 char buf[2], out_buf[2];
1056 char buf[2], out_buf[2];
1076 # define CSTR_EQUAL 2 1078 #ifndef CSTR_LESS_THAN 1079 # define CSTR_LESS_THAN 1 1088 const char*
s1,
size_t n1,
1089 const char*
s2,
size_t n2) {
1091 while (
n1 > 0 ||
n2 > 0) {
1104 const char*
s1,
size_t n1,
1105 const char*
s2,
size_t n2) {
1112 size_t size1, size2;
1123 char*
dst,
size_t dst_size,
1124 const char*
src,
size_t src_size) {
1212 if (loc_data[0] ==
'0')
return 0;
1213 else if (loc_data[0] ==
'1')
return 1;
1220 if (loc_data[0] ==
'0')
return 0;
1221 else if (loc_data[0] ==
'1')
return 1;
1229 return atoi(loc_data);
1239 if (loc_data[0] ==
'0')
return 0;
1240 else if (loc_data[0] ==
'1')
return 1;
1247 if (loc_data[0] ==
'0')
return 0;
1248 else if (loc_data[0] ==
'1')
return 1;
1256 return atoi(loc_data);
1265 const char **
names = (
const char**)ltime->
month;
1300 {
return ltime->
am; }
1303 {
return ltime->
pm; }
1316 int setid,
int msgid,
const char *dfault) {
1332 char building_group = 0;
1333 char repeat_last = 0;
1337 if (*
g >
'0' && *
g <=
'9') {
1338 if (!building_group) {
1339 *grouping = *
g -
'0';
1344 *grouping = *grouping * 10 + *
g -
'0';
1347 else if (*
g ==
'0') {
1348 if (!building_group) {
1355 else if (*
g ==
';') {
1376 while (low <= high) {
1377 i = (low + high) / 2;
1380 return (*(ConvTable +
i)).abbrev;
1390 char*
lang,
char* ctry,
char*
page) {
1400 if (lname[
len] ==
'_') {
1410 while (lname[tmpLen] ==
'.') {
1411 len = tmpLen; ++tmpLen;
1412 tmpLen +=
strcspn(lname + tmpLen,
".");
1428 if (
len == 0)
return -1;
1471 unsigned long result = 0;
1486 int LangFlag = 0, CtryFlag = !
__FndCtry;
1514 if (LangFlag && CtryFlag) {
1542 if (lname ==
NULL || lname[0] == 0) {
1556 if (
lang[0] == 0 && ctry[0] == 0)
1564 if (
lang[0] ==
'C' &&
lang[1] == 0) {
1602 if (
cp[1] == 0 && (
cp[0] ==
'0' ||
cp[1] ==
'1'))
1632 if (loc[0] ==
'L' && loc[1] ==
'C' && loc[2] ==
'_') {
1690 #if defined (_STLP_LANG_INVARIANT_DEFINED) 1718 size_t wbuffer_size,
buffer_size, from_offset, wbuf_offset;
1719 int from_size, to_size, wbuf_size;
1723 size_t orig_size =
size;
1730 from + from_offset, from_size,
NULL, 0);
1731 from_offset += from_size;
1735 wbuffer = (
wchar_t*)
malloc(
sizeof(
wchar_t)*wbuffer_size);
1744 from + from_offset, from_size, wbuffer + wbuf_offset, wbuf_size);
1745 from_offset += from_size;
1751 size = wbuffer_size;
1755 wbuffer + wbuf_offset, wbuf_size,
1757 wbuf_offset += wbuf_size;
1764 size = wbuffer_size;
1770 wbuffer + wbuf_offset, wbuf_size,
1772 wbuf_offset += wbuf_size;
1784 #ifndef _STLP_NO_WCHAR_T
struct _Locale_messages * _Locale_messages_create(const char *name, _Locale_lcid_t *lc_hint, int *__err_code)
int _Locale_p_sep_by_space(_Locale_monetary_t *lmon)
_Locale_numeric_t * _Locale_numeric_create(const char *name, _Locale_lcid_t *lc_hint, int *__err_code)
void _Locale_messages_destroy(struct _Locale_messages *lmes)
const char * _Locale_full_monthname(_Locale_time_t *ltime, int month)
char _Locale_frac_digits(_Locale_monetary_t *lmon)
struct _Locale_ctype _Locale_ctype_t
#define LCMAP_LINGUISTIC_CASING
BOOL WINAPI GetCPInfo(UINT CodePage, LPCPINFO CodePageInfo)
#define LOCALE_IDEFAULTANSICODEPAGE
static int __GetDefaultCP(LCID lcid)
#define LOCALE_SABBREVMONTHNAME12
#define VER_PLATFORM_WIN32_NT
int _Locale_tolower(_Locale_ctype_t *ltype, int c)
const char * _Locale_true(_Locale_numeric_t *lnum)
#define LOCALE_SABBREVMONTHNAME1
int WINAPI lstrcmpiA(LPCSTR lpString1, LPCSTR lpString2)
char const * _Locale_extract_monetary_name(const char *cname, char *buf, _Locale_lcid_t *hint, int *__err_code)
#define LOCALE_SISO639LANGNAME
#define WideCharToMultiByte
char * long_date_time_format
#define LOCALE_SENGLANGUAGE
void _Locale_time_destroy(_Locale_time_t *ltime)
char const * _Locale_monetary_name(const _Locale_monetary_t *lmon, char *buf)
#define LOCALE_IPOSSYMPRECEDES
#define LOCALE_SENGCOUNTRY
const char * _Locale_grouping(_Locale_numeric_t *lnum)
unsigned short int _Locale_mask_t
ACPI_SIZE strlen(const char *String)
IN BOOLEAN OUT PSTR Buffer
int _Locale_n_sign_posn(_Locale_monetary_t *lmon)
_Locale_lcid_t * _Locale_get_numeric_hint(_Locale_numeric_t *lnumeric)
_Locale_lcid_t * _Locale_get_monetary_hint(_Locale_monetary_t *lmonetary)
char * strstr(char *String1, char *String2)
_Check_return_ _CRTIMP size_t __cdecl strcspn(_In_z_ const char *_Str, _In_z_ const char *_Control)
#define LOCALE_SABBREVCTRYNAME
INT WINAPI GetLocaleInfoA(LCID lcid, LCTYPE lctype, LPSTR buffer, INT len)
struct _Locale_time _Locale_time_t
#define LOCALE_SABBREVDAYNAME7
#define LOCALE_SABBREVDAYNAME1
#define LOCALE_USER_DEFAULT
static DOUBLE day(DOUBLE time)
#define LOCALE_INEGSYMPRECEDES
const char * _Locale_abbrev_monthname(_Locale_time_t *ltime, int month)
const char * _Locale_t_fmt(_Locale_time_t *ltime)
const char * _Locale_catgets(struct _Locale_messages *lmes, nl_catd_type cat, int setid, int msgid, const char *dfault)
char const * _Locale_extract_collate_name(const char *cname, char *buf, _Locale_lcid_t *hint, int *__err_code)
static char const * __Extract_locale_name(const char *loc, const char *category, char *buf)
const char * _Locale_positive_sign(_Locale_monetary_t *lmon)
nl_catd_type _Locale_catopen(struct _Locale_messages *lmes, const char *cat_name)
_Locale_time_t * _Locale_time_create(const char *name, _Locale_lcid_t *lc_hint, int *__err_code)
_Locale_collate_t * _Locale_collate_create(const char *name, _Locale_lcid_t *lc_hint, int *__err_code)
static int __GetLCIDFromName(const char *lname, LCID *lcid, char *cp, _Locale_lcid_t *hint)
_Locale_lcid_t * _Locale_get_messages_hint(struct _Locale_messages *lmessages)
void _Locale_ctype_destroy(_Locale_ctype_t *ltype)
const char * _Locale_currency_symbol(_Locale_monetary_t *lmon)
#define cmp(status, error)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
const char * _Locale_am_str(_Locale_time_t *ltime)
static int _Locale_strcmp_auxA(_Locale_collate_t *lcol, const char *s1, size_t n1, const char *s2, size_t n2)
_Locale_lcid_t * _Locale_get_ctype_hint(_Locale_ctype_t *ltype)
const char * _Locale_negative_sign(_Locale_monetary_t *lmon)
static void __FixGrouping(char *grouping)
static int __ConvertDate(const char *NTDate, char *buffer, int buf_size)
#define LOCALE_IPOSSEPBYSPACE
struct _Locale_collate _Locale_collate_t
static char const * __GetLocaleName(LCID lcid, const char *cp, char *buf)
int _Locale_p_cs_precedes(_Locale_monetary_t *lmon)
void _Locale_catclose(struct _Locale_messages *lmes, nl_catd_type cat)
struct _LOCALECONV LOCALECONV
static void __GetLocaleInfoUsingACP(LCID lcid, const char *cp, LCTYPE lctype, char *buf, int buf_size, wchar_t *wbuf, int wbuf_size)
GLenum GLuint GLenum GLsizei const GLchar * buf
unsigned short ctable[256]
char _Locale_int_frac_digits(_Locale_monetary_t *lmon)
#define LOCALE_SMONTHNAME1
char const * _Locale_extract_messages_name(const char *cname, char *buf, _Locale_lcid_t *hint, int *__err_code)
static int __intGetOCP(LCID lcid)
BOOL WINAPI GetStringTypeA(LCID locale, DWORD type, LPCSTR src, INT count, LPWORD chartype)
static char * __ConvertToCP(int from_cp, int to_cp, const char *from, size_t size, size_t *ret_buf_size)
#define LOCALE_SINTLSYMBOL
static DWORD trim_size_t_to_DWORD(size_t n)
static char const * __TranslateToSystem(const char *lname, char *buf, _Locale_lcid_t *hint, int *__err_code)
GLenum GLuint GLenum GLsizei length
static void buffer_size(GLcontext *ctx, GLuint *width, GLuint *height)
#define _STLP_LOC_NO_MEMORY
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
const char * _Locale_d_fmt(_Locale_time_t *ltime)
static _Locale_mask_t ctable[256]
static int __intGetACP(LCID lcid)
static const char * __true_name
const char * _Locale_time_default(char *buf)
ULONG dwOSVersionInfoSize
void _Locale_monetary_destroy(_Locale_monetary_t *lmon)
static const WCHAR lang[]
INT WINAPI CompareStringA(LCID lcid, DWORD flags, LPCSTR str1, INT len1, LPCSTR str2, INT len2)
static void MapCtypeMasks(unsigned short *cur, unsigned short *end)
size_t _Locale_strxfrm(_Locale_collate_t *lcol, char *dst, size_t dst_size, const char *src, size_t src_size)
char const * _Locale_time_name(const _Locale_time_t *ltime, char *buf)
#define _STLP_STRNCPY(D, DS, S, C)
static int trim_size_t_to_int(size_t n)
const _Locale_mask_t * _Locale_ctype_table(_Locale_ctype_t *ltype)
static LOCALECONV __rg_language[]
int _Locale_n_sep_by_space(_Locale_monetary_t *lmon)
_STLP_STATIC_ASSERT(sizeof(nl_catd_type)<=sizeof(int)) class _STLP_CLASS_DECLSPEC _Catalog_nl_catd_map
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
BYTE LeadByte[MAX_LEADBYTES]
#define LOCALE_SABBREVLANGNAME
char _Locale_thousands_sep(_Locale_numeric_t *lnum)
BOOL WINAPI GetStringTypeW(DWORD type, LPCWSTR src, INT count, LPWORD chartype)
#define LOCALE_SPOSITIVESIGN
char const * _Locale_numeric_name(const _Locale_numeric_t *lnum, char *buf)
#define _STLP_MARK_PARAMETER_AS_UNUSED(X)
static BOOL CALLBACK EnumLocalesProcA(LPSTR locale)
const char * _Locale_monetary_default(char *buf)
const char * _Locale_messages_default(char *buf)
const char * _Locale_numeric_default(char *buf)
#define _STLP_LOC_UNKNOWN_NAME
#define LOCALE_INEGSIGNPOSN
static char const * _Locale_extract_category_name(const char *name, const char *category, char *buf, _Locale_lcid_t *hint, int *__err_code)
#define LOCALE_IINTLCURRDIGITS
static LCID LocaleFromHex(const char *locale)
void _Locale_numeric_destroy(_Locale_numeric_t *lnum)
char * abbrev_dayofweek[7]
#define LOCALE_SNEGATIVESIGN
const char * _Locale_pm_str(_Locale_time_t *ltime)
char const * _Locale_messages_name(const struct _Locale_messages *lmes, char *buf)
#define LOCALE_SSHORTDATE
const char * _Locale_full_dayofweek(_Locale_time_t *ltime, int day)
int _Locale_strcmp(_Locale_collate_t *lcol, const char *s1, size_t n1, const char *s2, size_t n2)
const char * _Locale_long_d_fmt(_Locale_time_t *ltime)
static const char * _Locale_common_default(char *buf)
static int __ParseLocaleString(const char *lname, char *lang, char *ctry, char *page)
int _Locale_toupper(_Locale_ctype_t *ltype, int c)
static const char * _C_name
_Locale_monetary_t * _Locale_monetary_create(const char *name, _Locale_lcid_t *lc_hint, int *__err_code)
void _Locale_collate_destroy(_Locale_collate_t *lcol)
const char * _Locale_collate_default(char *buf)
#define LOCALE_IDEFAULTCODEPAGE
#define _Locale_MAX_SIMPLE_NAME
static const wchar_t void * locale
int _Locale_n_cs_precedes(_Locale_monetary_t *lmon)
char const * _Locale_collate_name(const _Locale_collate_t *lcol, char *buf)
#define LOCALE_ICURRDIGITS
static void my_ltoa(long __x, char *buf)
static const char * __ConvertName(const char *lname, LOCALECONV *ConvTable, int TableSize)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define WC_COMPOSITECHECK
#define LOCALE_SISO3166CTRYNAME
#define _STLP_STRCPY(D, DS, S)
char const * _Locale_extract_time_name(const char *cname, char *buf, _Locale_lcid_t *hint, int *__err_code)
static const char * __FndLang
BOOL WINAPI EnumSystemLocalesA(LOCALE_ENUMPROCA lpfnLocaleEnum, DWORD dwFlags)
#define _STLP_END_NAMESPACE
const char * _Locale_d_t_fmt(_Locale_time_t *ltime)
unsigned short MapCtypeMask(unsigned short mask)
struct _Locale_name_hint _Locale_lcid_t
_Locale_ctype_t * _Locale_ctype_create(const char *name, _Locale_lcid_t *lc_hint, int *__err_code)
#define LOCALE_SMONTHNAME12
_Locale_lcid_t * _Locale_get_collate_hint(_Locale_collate_t *lcollate)
char const * _Locale_extract_numeric_name(const char *cname, char *buf, _Locale_lcid_t *hint, int *__err_code)
#define _STLP_LOC_UNSUPPORTED_FACET_CATEGORY
#define MultiByteToWideChar
#define LOCALE_IPOSSIGNPOSN
char const * _Locale_ctype_name(const _Locale_ctype_t *ltype, char *buf)
char * strchr(const char *String, int ch)
static int __GetLCID(const char *lang, const char *ctry, LCID *lcid)
static const char * __false_name
_Check_return_ int __cdecl atoi(_In_z_ const char *_Str)
_Must_inspect_result_ typedef _Out_ PULONG TableSize
#define LOCALE_INEGSEPBYSPACE
const char * _Locale_abbrev_dayofweek(_Locale_time_t *ltime, int day)
char _Locale_decimal_point(_Locale_numeric_t *lnum)
#define _STLP_STRCAT(D, DS, S)
#define _STLP_BEGIN_NAMESPACE
struct _Locale_numeric _Locale_numeric_t
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
const char * _Locale_false(_Locale_numeric_t *lnum)
static LOCALECONV __rg_country[]
char _Locale_mon_decimal_point(_Locale_monetary_t *lmon)
_Locale_lcid_t * _Locale_get_time_hint(_Locale_time_t *ltime)
struct _Locale_monetary _Locale_monetary_t
const char * _Locale_long_d_t_fmt(_Locale_time_t *ltime)
const char * _Locale_int_curr_symbol(_Locale_monetary_t *lmon)
#define LOCALE_STIMEFORMAT
const char * _Locale_mon_grouping(_Locale_monetary_t *lmon)
static CRITICAL_SECTION __criticalSection
char _Locale_mon_thousands_sep(_Locale_monetary_t *lmon)
static int __ConvertTime(const char *NTTime, char *buffer, int buf_size)
static const char * __FndCtry
INT WINAPI LCMapStringA(LCID lcid, DWORD flags, LPCSTR src, INT srclen, LPSTR dst, INT dstlen)
_In_ WDFMEMORY _Out_opt_ size_t * BufferSize
char const * _Locale_extract_ctype_name(const char *cname, char *buf, _Locale_lcid_t *hint, int *__err_code)
int _Locale_p_sign_posn(_Locale_monetary_t *lmon)
const char * _Locale_ctype_default(char *buf)