source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/locale.h@ 1170

Last change on this file since 1170 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 2.8 KB
Line 
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef _INC_LOCALE
7#define _INC_LOCALE
8
9#include <crtdefs.h>
10
11#ifdef __cplusplus
12#include <stdio.h>
13#endif
14
15#pragma pack(push,_CRT_PACKING)
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21#ifndef NULL
22#ifdef __cplusplus
23#ifndef _WIN64
24#define NULL 0
25#else
26#define NULL 0LL
27#endif /* W64 */
28#else
29#define NULL ((void *)0)
30#endif
31#endif
32
33#define LC_ALL 0
34#define LC_COLLATE 1
35#define LC_CTYPE 2
36#define LC_MONETARY 3
37#define LC_NUMERIC 4
38#define LC_TIME 5
39
40#define LC_MIN LC_ALL
41#define LC_MAX LC_TIME
42
43#ifndef _LCONV_DEFINED
44#define _LCONV_DEFINED
45 struct lconv {
46 char *decimal_point;
47 char *thousands_sep;
48 char *grouping;
49 char *int_curr_symbol;
50 char *currency_symbol;
51 char *mon_decimal_point;
52 char *mon_thousands_sep;
53 char *mon_grouping;
54 char *positive_sign;
55 char *negative_sign;
56 char int_frac_digits;
57 char frac_digits;
58 char p_cs_precedes;
59 char p_sep_by_space;
60 char n_cs_precedes;
61 char n_sep_by_space;
62 char p_sign_posn;
63 char n_sign_posn;
64#if __MSVCRT_VERSION__ >= 0xA00 || _WIN32_WINNT >= 0x601
65 wchar_t* _W_decimal_point;
66 wchar_t* _W_thousands_sep;
67 wchar_t* _W_int_curr_symbol;
68 wchar_t* _W_currency_symbol;
69 wchar_t* _W_mon_decimal_point;
70 wchar_t* _W_mon_thousands_sep;
71 wchar_t* _W_positive_sign;
72 wchar_t* _W_negative_sign;
73#endif
74 };
75#endif
76
77#ifndef _CONFIG_LOCALE_SWT
78#define _CONFIG_LOCALE_SWT
79
80#define _ENABLE_PER_THREAD_LOCALE 0x1
81#define _DISABLE_PER_THREAD_LOCALE 0x2
82#define _ENABLE_PER_THREAD_LOCALE_GLOBAL 0x10
83#define _DISABLE_PER_THREAD_LOCALE_GLOBAL 0x20
84#define _ENABLE_PER_THREAD_LOCALE_NEW 0x100
85#define _DISABLE_PER_THREAD_LOCALE_NEW 0x200
86
87#endif
88
89 int __cdecl _configthreadlocale(int _Flag);
90 char *__cdecl setlocale(int _Category,const char *_Locale);
91 _CRTIMP struct lconv *__cdecl localeconv(void);
92 _CRTIMP _locale_t __cdecl _get_current_locale(void);
93 _CRTIMP _locale_t __cdecl _create_locale(int _Category,const char *_Locale);
94 _CRTIMP void __cdecl _free_locale(_locale_t _Locale);
95 _locale_t __cdecl __get_current_locale(void);
96 _locale_t __cdecl __create_locale(int _Category,const char *_Locale);
97 void __cdecl __free_locale(_locale_t _Locale);
98
99 _CRTIMP unsigned int __cdecl ___lc_codepage_func(void);
100
101#ifndef _WLOCALE_DEFINED
102#define _WLOCALE_DEFINED
103 _CRTIMP wchar_t *__cdecl _wsetlocale(int _Category,const wchar_t *_Locale);
104#endif
105
106#ifdef __CHAR_UNSIGNED__
107/* Pull in the constructor from 'charmax.c'. */
108extern int __mingw_initcharmax;
109__MINGW_SELECTANY int* __mingw_reference_charmax = &__mingw_initcharmax;
110#endif
111
112#ifdef __cplusplus
113}
114#endif
115
116#pragma pack(pop)
117#endif
Note: See TracBrowser for help on using the repository browser.