Files
seta75D d6fe8fe829 Init
2021-10-11 22:19:34 -03:00

1042 lines
33 KiB
C

static char sccsid[] = "@(#)65 1.15.2.10 src/bos/usr/ccs/lib/libc/NLSsetup.c, libcloc, bos410 4/12/94 13:01:46";
/*
* COMPONENT_NAME: (LIBCLOC) Locale
*
* FUNCTIONS: NLSsetup.c
*
* ORIGINS: 27
*
* This module contains IBM CONFIDENTIAL code. -- (IBM
* Confidential Restricted when combined with the aggregated
* modules for this product)
* SOURCE MATERIALS
* (C) COPYRIGHT International Business Machines Corp. 1991 , 1994
* All Rights Reserved
*
* US Government Users Restricted Rights - Use, duplication or
* disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
*
*/
#include <sys/lc_core.h>
#include <sys/lc_sys.h>
#include <sys/localedef.h>
#include <langinfo.h>
/*
Initialization methods
*/
void __charmap_init(_LC_locale_objhdl_t);
void __collate_init(_LC_locale_objhdl_t);
void __ctype_init(_LC_locale_objhdl_t);
void __monetary_init(_LC_locale_objhdl_t);
void __numeric_init(_LC_locale_objhdl_t);
void __resp_init(_LC_locale_objhdl_t);
void __time_init(_LC_locale_objhdl_t);
void __locale_init(_LC_locale_objhdl_t);
/*
Forward declaration
*/
_LC_locale_t __C_locale_object;
#if 0
/*
This table was used to support 3.1 binary objects on 3.2.
Since 3.1 binary support is no longer required on 4.x, this
code is not needed. In the future, I would recommend that
this code actually be removed from this file.
This table supports only the 3.1 version of the MB_CUR_MAX macro.
*/
static wchar_t _C_xlate_31[] = {
0x0000, 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006,
0x0007, 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e,
0x000f, 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016,
0x0017, 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e,
0x001f, 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026,
0x0027, 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e,
0x002f, 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036,
0x0037, 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e,
0x003f, 0x0040, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066,
0x0067, 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e,
0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076,
0x0077, 0x0078, 0x0079, 0x007a, 0x005b, 0x005c, 0x005d, 0x005e,
0x005f, 0x0060, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046,
0x0047, 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e,
0x004f, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056,
0x0057, 0x0058, 0x0059, 0x005a, 0x007b, 0x007c, 0x007d, 0x007e,
0x007f, 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086,
0x0087, 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e,
0x008f, 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096,
0x0097, 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e,
0x009f, 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6,
0x00a7, 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae,
0x00af, 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6,
0x00b7, 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be,
0x00bf, 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6,
0x00c7, 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce,
0x00cf, 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6,
0x00d7, 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de,
0x00df, 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6,
0x00e7, 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee,
0x00ef, 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6,
0x00f7, 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe,
0x00ff,
};
static ctype_t _locp_chrtbl={
0, 0, 0, 1, 1, 1, "C", 0, 0 /*was: _C_xlate_31*/, 0, NULL,
};
static loc_t _locp_data = {
'Z','Z', 0, 0, 0,
NULL, /* LC_COLLATE */
&_locp_chrtbl, /* LC_CTYPE */
NULL, /* LC_MONETARY */
NULL, /* LC_NUMERIC */
NULL, /* LC_TIME */
NULL, /* LC_MESSAGES */
NULL, /* ... */
};
loc_t * _locp = &_locp_data;
#endif
static unsigned char cm_csmap[]={
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
};
_LC_charmap_t _C_charmap_object={
/*
** Object header info
*/
_LC_CHARMAP, /* type_id */
_LC_MAGIC, /* magic */
_LC_VERSION, /* version */
0, /* size */
/*
** charmap methods for C_locale
*/
NL_CSINFO,
MBTOWC_SB,
MBSTOWCS_SB,
WCTOMB_SB,
WCSTOMBS_SB,
MBLEN_SB,
WCSWIDTH_LATIN,
WCWIDTH_LATIN,
__MBTOPC_SB,
__MBSTOPCS_SB,
__PCTOMB_SB,
__PCSTOMBS_SB,
CSID_STD,
WCSID_STD,
CHARMAP_INIT, /* init method */
0, /* void * data */
/*
** extension data
*/
"ISO8859-1", /* codeset name*/
1, /* cm_mb_cur_max */
1, /* cm_mb_cur_min */
1, /* max display width for this codeset */
cm_csmap, /* cm_csmap */
&__C_locale_object, /* loc_rec */
0, /* __meth_ptr */
0, /* __data_ptr */
};
#include <ctype.h>
_LC_classnm_t _C_classnms[]={
"alnum", _ISALNUM,
"alpha", _ISALPHA,
"blank", _ISBLANK,
"cntrl", _ISCNTRL,
"digit", _ISDIGIT,
"graph", _ISGRAPH,
"lower", _ISLOWER,
"print", _ISPRINT,
"punct", _ISPUNCT,
"space", _ISSPACE,
"upper", _ISUPPER,
"xdigit", _ISXDIGIT
};
wchar_t _C_upper[] = {
0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
0x0060, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
0x0058, 0x0059, 0x005a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff};
wchar_t _C_lower[] = {
0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
0x0040, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
0x0078, 0x0079, 0x007a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff};
#define _C _ISCNTRL
#define _B (_ISBLANK|_ISPRINT|_ISSPACE)
#define _T (_ISBLANK|_ISSPACE)
#define _V _ISSPACE
#define _P (_ISPUNCT|_ISPRINT|_ISGRAPH)
#define _X _ISXDIGIT
#define _U (_ISUPPER|_ISALPHA|_ISALNUM|_ISPRINT|_ISGRAPH)
#define _L (_ISLOWER|_ISALPHA|_ISALNUM|_ISPRINT|_ISGRAPH)
#define _G (_ISGRAPH|_ISPRINT)
#define _N (_ISDIGIT|_ISALNUM|_ISPRINT|_ISGRAPH)
unsigned int _C_masks[]={
/* 0 1 2 3 4 5 6 7 */
/* 0*/ _C, _C, _C, _C, _C, _C, _C, _C,
/* 10*/ _C, _T|_C, _V|_C, _V|_C, _V|_C, _V|_C, _C, _C,
/* 20*/ _C, _C, _C, _C, _C, _C, _C, _C,
/* 30*/ _C, _C, _C, _C, _C, _C, _C, _C,
/* 40*/ _B, _P, _P, _P, _P, _P, _P, _P,
/* 50*/ _P, _P, _P, _P, _P, _P, _P, _P,
/* 60*/ _N|_X, _N|_X, _N|_X, _N|_X, _N|_X, _N|_X, _N|_X, _N|_X,
/* 70*/ _N|_X, _N|_X, _P, _P, _P, _P, _P, _P,
/*100*/ _P, _U|_X, _U|_X, _U|_X, _U|_X, _U|_X, _U|_X, _U,
/*110*/ _U, _U, _U, _U, _U, _U, _U, _U,
/*120*/ _U, _U, _U, _U, _U, _U, _U, _U,
/*130*/ _U, _U, _U, _P, _P, _P, _P, _P,
/*140*/ _P, _L|_X, _L|_X, _L|_X, _L|_X, _L|_X, _L|_X, _L,
/*150*/ _L, _L, _L, _L, _L, _L, _L, _L,
/*160*/ _L, _L, _L, _L, _L, _L, _L, _L,
/*170*/ _L, _L, _L, _P, _P, _P, _P, _C,
/*200*/ 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0
};
_LC_ctype_t _C_ctype_object={
/*
** Object header info
*/
_LC_CTYPE, /* type_id */
_LC_MAGIC, /* magic */
_LC_VERSION, /* version */
0, /* size */
/*
** Character Attributes Methods
*/
TOWUPPER_STD,
TOWLOWER_STD,
GET_WCTYPE_STD,
IS_WCTYPE_SB,
CTYPE_INIT, /* init method */
0, /* was: _C_xlate_31 (void * data) */
/*
** class extension data.
*/
0, /* min process code */
255, /* max process code */
_C_upper, /* upper */
_C_lower, /* lower */
_C_masks, /* array of classification masks */
0, 0, /* qidx, qmask = 0 */
sizeof(_C_classnms) / sizeof(_LC_classnm_t),
_C_classnms,
&__C_locale_object, /* loc_rec */
0, /* __meth_ptr */
0, /* __data_ptr */
};
_LC_coltbl_t _C_coltbl[]={
0x101,0x101,0,0,0x101,0, 0x102,0x102,0,0,0x102,0,
0x103,0x103,0,0,0x103,0, 0x104,0x104,0,0,0x104,0,
0x105,0x105,0,0,0x105,0, 0x106,0x106,0,0,0x106,0,
0x107,0x107,0,0,0x107,0, 0x108,0x108,0,0,0x108,0,
0x109,0x109,0,0,0x109,0, 0x10A,0x10A,0,0,0x10A,0,
0x10B,0x10B,0,0,0x10B,0, 0x10C,0x10C,0,0,0x10C,0,
0x10D,0x10D,0,0,0x10D,0, 0x10E,0x10E,0,0,0x10E,0,
0x10F,0x10F,0,0,0x10F,0, 0x110,0x110,0,0,0x110,0,
0x111,0x111,0,0,0x111,0, 0x112,0x112,0,0,0x112,0,
0x113,0x113,0,0,0x113,0, 0x114,0x114,0,0,0x114,0,
0x115,0x115,0,0,0x115,0, 0x116,0x116,0,0,0x116,0,
0x117,0x117,0,0,0x117,0, 0x118,0x118,0,0,0x118,0,
0x119,0x119,0,0,0x119,0, 0x11A,0x11A,0,0,0x11A,0,
0x11B,0x11B,0,0,0x11B,0, 0x11C,0x11C,0,0,0x11C,0,
0x11D,0x11D,0,0,0x11D,0, 0x11E,0x11E,0,0,0x11E,0,
0x11F,0x11F,0,0,0x11F,0, 0x120,0x120,0,0,0x120,0,
0x121,0x121,0,0,0x121,0, 0x122,0x122,0,0,0x122,0,
0x123,0x123,0,0,0x123,0, 0x124,0x124,0,0,0x124,0,
0x125,0x125,0,0,0x125,0, 0x126,0x126,0,0,0x126,0,
0x127,0x127,0,0,0x127,0, 0x128,0x128,0,0,0x128,0,
0x129,0x129,0,0,0x129,0, 0x12A,0x12A,0,0,0x12A,0,
0x12B,0x12B,0,0,0x12B,0, 0x12C,0x12C,0,0,0x12C,0,
0x12D,0x12D,0,0,0x12D,0, 0x12E,0x12E,0,0,0x12E,0,
0x12F,0x12F,0,0,0x12F,0, 0x130,0x130,0,0,0x130,0,
0x131,0x131,0,0,0x131,0, 0x132,0x132,0,0,0x132,0,
0x133,0x133,0,0,0x133,0, 0x134,0x134,0,0,0x134,0,
0x135,0x135,0,0,0x135,0, 0x136,0x136,0,0,0x136,0,
0x137,0x137,0,0,0x137,0, 0x138,0x138,0,0,0x138,0,
0x139,0x139,0,0,0x139,0, 0x13A,0x13A,0,0,0x13A,0,
0x13B,0x13B,0,0,0x13B,0, 0x13C,0x13C,0,0,0x13C,0,
0x13D,0x13D,0,0,0x13D,0, 0x13E,0x13E,0,0,0x13E,0,
0x13F,0x13F,0,0,0x13F,0, 0x140,0x140,0,0,0x140,0,
0x141,0x141,0,0,0x141,0, 0x142,0x142,0,0,0x142,0,
0x143,0x143,0,0,0x143,0, 0x144,0x144,0,0,0x144,0,
0x145,0x145,0,0,0x145,0, 0x146,0x146,0,0,0x146,0,
0x147,0x147,0,0,0x147,0, 0x148,0x148,0,0,0x148,0,
0x149,0x149,0,0,0x149,0, 0x14A,0x14A,0,0,0x14A,0,
0x14B,0x14B,0,0,0x14B,0, 0x14C,0x14C,0,0,0x14C,0,
0x14D,0x14D,0,0,0x14D,0, 0x14E,0x14E,0,0,0x14E,0,
0x14F,0x14F,0,0,0x14F,0, 0x150,0x150,0,0,0x150,0,
0x151,0x151,0,0,0x151,0, 0x152,0x152,0,0,0x152,0,
0x153,0x153,0,0,0x153,0, 0x154,0x154,0,0,0x154,0,
0x155,0x155,0,0,0x155,0, 0x156,0x156,0,0,0x156,0,
0x157,0x157,0,0,0x157,0, 0x158,0x158,0,0,0x158,0,
0x159,0x159,0,0,0x159,0, 0x15A,0x15A,0,0,0x15A,0,
0x15B,0x15B,0,0,0x15B,0, 0x15C,0x15C,0,0,0x15C,0,
0x15D,0x15D,0,0,0x15D,0, 0x15E,0x15E,0,0,0x15E,0,
0x15F,0x15F,0,0,0x15F,0, 0x160,0x160,0,0,0x160,0,
0x161,0x161,0,0,0x161,0, 0x162,0x162,0,0,0x162,0,
0x163,0x163,0,0,0x163,0, 0x164,0x164,0,0,0x164,0,
0x165,0x165,0,0,0x165,0, 0x166,0x166,0,0,0x166,0,
0x167,0x167,0,0,0x167,0, 0x168,0x168,0,0,0x168,0,
0x169,0x169,0,0,0x169,0, 0x16A,0x16A,0,0,0x16A,0,
0x16B,0x16B,0,0,0x16B,0, 0x16C,0x16C,0,0,0x16C,0,
0x16D,0x16D,0,0,0x16D,0, 0x16E,0x16E,0,0,0x16E,0,
0x16F,0x16F,0,0,0x16F,0, 0x170,0x170,0,0,0x170,0,
0x171,0x171,0,0,0x171,0, 0x172,0x172,0,0,0x172,0,
0x173,0x173,0,0,0x173,0, 0x174,0x174,0,0,0x174,0,
0x175,0x175,0,0,0x175,0, 0x176,0x176,0,0,0x176,0,
0x177,0x177,0,0,0x177,0, 0x178,0x178,0,0,0x178,0,
0x179,0x179,0,0,0x179,0, 0x17A,0x17A,0,0,0x17A,0,
0x17B,0x17B,0,0,0x17B,0, 0x17C,0x17C,0,0,0x17C,0,
0x17D,0x17D,0,0,0x17D,0, 0x17E,0x17E,0,0,0x17E,0,
0x17F,0x17F,0,0,0x17F,0, 0x180,0x180,0,0,0x180,0,
0x181,0x181,0,0,0x181,0, 0x182,0x182,0,0,0x182,0,
0x183,0x183,0,0,0x183,0, 0x184,0x184,0,0,0x184,0,
0x185,0x185,0,0,0x185,0, 0x186,0x186,0,0,0x186,0,
0x187,0x187,0,0,0x187,0, 0x188,0x188,0,0,0x188,0,
0x189,0x189,0,0,0x189,0, 0x18A,0x18A,0,0,0x18A,0,
0x18B,0x18B,0,0,0x18B,0, 0x18C,0x18C,0,0,0x18C,0,
0x18D,0x18D,0,0,0x18D,0, 0x18E,0x18E,0,0,0x18E,0,
0x18F,0x18F,0,0,0x18F,0, 0x190,0x190,0,0,0x190,0,
0x191,0x191,0,0,0x191,0, 0x192,0x192,0,0,0x192,0,
0x193,0x193,0,0,0x193,0, 0x194,0x194,0,0,0x194,0,
0x195,0x195,0,0,0x195,0, 0x196,0x196,0,0,0x196,0,
0x197,0x197,0,0,0x197,0, 0x198,0x198,0,0,0x198,0,
0x199,0x199,0,0,0x199,0, 0x19A,0x19A,0,0,0x19A,0,
0x19B,0x19B,0,0,0x19B,0, 0x19C,0x19C,0,0,0x19C,0,
0x19D,0x19D,0,0,0x19D,0, 0x19E,0x19E,0,0,0x19E,0,
0x19F,0x19F,0,0,0x19F,0, 0x1A0,0x1A0,0,0,0x1A0,0,
0x1A1,0x1A1,0,0,0x1A1,0, 0x1A2,0x1A2,0,0,0x1A2,0,
0x1A3,0x1A3,0,0,0x1A3,0, 0x1A4,0x1A4,0,0,0x1A4,0,
0x1A5,0x1A5,0,0,0x1A5,0, 0x1A6,0x1A6,0,0,0x1A6,0,
0x1A7,0x1A7,0,0,0x1A7,0, 0x1A8,0x1A8,0,0,0x1A8,0,
0x1A9,0x1A9,0,0,0x1A9,0, 0x1AA,0x1AA,0,0,0x1AA,0,
0x1AB,0x1AB,0,0,0x1AB,0, 0x1AC,0x1AC,0,0,0x1AC,0,
0x1AD,0x1AD,0,0,0x1AD,0, 0x1AE,0x1AE,0,0,0x1AE,0,
0x1AF,0x1AF,0,0,0x1AF,0, 0x1B0,0x1B0,0,0,0x1B0,0,
0x1B1,0x1B1,0,0,0x1B1,0, 0x1B2,0x1B2,0,0,0x1B2,0,
0x1B3,0x1B3,0,0,0x1B3,0, 0x1B4,0x1B4,0,0,0x1B4,0,
0x1B5,0x1B5,0,0,0x1B5,0, 0x1B6,0x1B6,0,0,0x1B6,0,
0x1B7,0x1B7,0,0,0x1B7,0, 0x1B8,0x1B8,0,0,0x1B8,0,
0x1B9,0x1B9,0,0,0x1B9,0, 0x1BA,0x1BA,0,0,0x1BA,0,
0x1BB,0x1BB,0,0,0x1BB,0, 0x1BC,0x1BC,0,0,0x1BC,0,
0x1BD,0x1BD,0,0,0x1BD,0, 0x1BE,0x1BE,0,0,0x1BE,0,
0x1BF,0x1BF,0,0,0x1BF,0, 0x1C0,0x1C0,0,0,0x1C0,0,
0x1C1,0x1C1,0,0,0x1C1,0, 0x1C2,0x1C2,0,0,0x1C2,0,
0x1C3,0x1C3,0,0,0x1C3,0, 0x1C4,0x1C4,0,0,0x1C4,0,
0x1C5,0x1C5,0,0,0x1C5,0, 0x1C6,0x1C6,0,0,0x1C6,0,
0x1C7,0x1C7,0,0,0x1C7,0, 0x1C8,0x1C8,0,0,0x1C8,0,
0x1C9,0x1C9,0,0,0x1C9,0, 0x1CA,0x1CA,0,0,0x1CA,0,
0x1CB,0x1CB,0,0,0x1CB,0, 0x1CC,0x1CC,0,0,0x1CC,0,
0x1CD,0x1CD,0,0,0x1CD,0, 0x1CE,0x1CE,0,0,0x1CE,0,
0x1CF,0x1CF,0,0,0x1CF,0, 0x1D0,0x1D0,0,0,0x1D0,0,
0x1D1,0x1D1,0,0,0x1D1,0, 0x1D2,0x1D2,0,0,0x1D2,0,
0x1D3,0x1D3,0,0,0x1D3,0, 0x1D4,0x1D4,0,0,0x1D4,0,
0x1D5,0x1D5,0,0,0x1D5,0, 0x1D6,0x1D6,0,0,0x1D6,0,
0x1D7,0x1D7,0,0,0x1D7,0, 0x1D8,0x1D8,0,0,0x1D8,0,
0x1D9,0x1D9,0,0,0x1D9,0, 0x1DA,0x1DA,0,0,0x1DA,0,
0x1DB,0x1DB,0,0,0x1DB,0, 0x1DC,0x1DC,0,0,0x1DC,0,
0x1DD,0x1DD,0,0,0x1DD,0, 0x1DE,0x1DE,0,0,0x1DE,0,
0x1DF,0x1DF,0,0,0x1DF,0, 0x1E0,0x1E0,0,0,0x1E0,0,
0x1E1,0x1E1,0,0,0x1E1,0, 0x1E2,0x1E2,0,0,0x1E2,0,
0x1E3,0x1E3,0,0,0x1E3,0, 0x1E4,0x1E4,0,0,0x1E4,0,
0x1E5,0x1E5,0,0,0x1E5,0, 0x1E6,0x1E6,0,0,0x1E6,0,
0x1E7,0x1E7,0,0,0x1E7,0, 0x1E8,0x1E8,0,0,0x1E8,0,
0x1E9,0x1E9,0,0,0x1E9,0, 0x1EA,0x1EA,0,0,0x1EA,0,
0x1EB,0x1EB,0,0,0x1EB,0, 0x1EC,0x1EC,0,0,0x1EC,0,
0x1ED,0x1ED,0,0,0x1ED,0, 0x1EE,0x1EE,0,0,0x1EE,0,
0x1EF,0x1EF,0,0,0x1EF,0, 0x1F0,0x1F0,0,0,0x1F0,0,
0x1F1,0x1F1,0,0,0x1F1,0, 0x1F2,0x1F2,0,0,0x1F2,0,
0x1F3,0x1F3,0,0,0x1F3,0, 0x1F4,0x1F4,0,0,0x1F4,0,
0x1F5,0x1F5,0,0,0x1F5,0, 0x1F6,0x1F6,0,0,0x1F6,0,
0x1F7,0x1F7,0,0,0x1F7,0, 0x1F8,0x1F8,0,0,0x1F8,0,
0x1F9,0x1F9,0,0,0x1F9,0, 0x1FA,0x1FA,0,0,0x1FA,0,
0x1FB,0x1FB,0,0,0x1FB,0, 0x1FC,0x1FC,0,0,0x1FC,0,
0x1FD,0x1FD,0,0,0x1FD,0, 0x1FE,0x1FE,0,0,0x1FE,0,
0x1FF,0x1FF,0,0,0x1FF,0, 0x200,0x200,0,0,0x200,0,
0x201,0x201,0,0,0x201,0, 0x202,0x202,0,0,0x202,0,
};
_LC_collate_t _C_collate_object={
/*
** Object header info
*/
_LC_COLLATE, /* type_id */
_LC_MAGIC, /* magic */
_LC_VERSION, /* version */
0, /* size */
/*
** Collation Methods
*/
/* character collation methods */
STRCOLL_C,
STRXFRM_C,
/* process code collation methods */
WCSCOLL_C,
WCSXFRM_C,
/* filename matching methods */
FNMATCH_C,
/* regular expression methods */
REGCOMP_STD,
REGERROR_STD,
REGEXEC_STD,
REGFREE_STD,
COLLATE_INIT, /* init method */
0, /* void * data */
/*
** Class Extension Data
*/
0, /* co_nord */
{ 0, 0, 0, 0, 0 }, /* co_sort */
0, /* co_wc_min */
255, /* co_wc_max */
257, /* co_col_min*/
257+256, /* co_col_max*/
_C_coltbl, /* co_coltbl */
0, /* co_nsubs */
0, /* co_subs */
0, /* co_special */
&__C_locale_object, /* loc_rec */
0, /* __meth_ptr */
0, /* __data_ptr */
};
_LC_numeric_t _C_numeric_object={
/* Object header info */
_LC_NUMERIC, /* type_id */
_LC_MAGIC, /* magic */
_LC_VERSION, /* version */
0, /* size */
NL_NUMINFO,
NUMERIC_INIT, /* init method */
0, /* void * data */
/* Class Extension Data */
".", /* decimal_point */
"", /* thousands_sep */
0, /* grouping */
&__C_locale_object,/* loc_rec */
0, /* __meth_ptr */
0, /* __data_ptr */
};
_LC_monetary_t _C_monetary_object={
/*
** Object header info
*/
_LC_MONETARY, /* type_id */
_LC_MAGIC, /* magic */
_LC_VERSION, /* version */
0, /* size */
/* Methods for monetary class */
NL_MONINFO,
STRFMON_STD,
MONETARY_INIT, /* init method */
0, /* void * data */
/* Class Extension Data */
"", /* int_curr_symbol */
"", /* currency_symbol */
"", /* mon_decimal_point */
"", /* mon_thousands_sep */
"", /* mon_grouping */
"", /* positive_sign */
"", /* negative_sign */
-1, /* int_frac_digits */
-1, /* frac_digits */
-1, /* p_cs_precedes */
-1, /* p_sep_by_space */
-1, /* n_cs_precedes */
-1, /* n_sep_by_space */
-1, /* p_sign_posn */
-1, /* n_sign_posn */
"", /* debit_sign */
"", /* credit_sign */
"", /* left_parenthesis */
"", /* right_parenthesis */
&__C_locale_object, /* loc_rec */
0, /* __meth_ptr */
0, /* __data_ptr */
};
_LC_time_t _C_time_object={
/*
** Object header info
*/
_LC_TIME, /* type_id */
_LC_MAGIC, /* magic */
_LC_VERSION, /* version */
0, /* size */
NL_TIMINFO,
STRFTIME_STD,
STRPTIME_STD,
WCSFTIME_STD,
TIME_INIT, /* init method */
0, /* void * data */
/* Class Extension Data */
"%m/%d/%y", /* d_fmt */
"%H:%M:%S", /* t_fmt */
"%a %b %e %H:%M:%S %Y", /* d_t_fmt */
"%I:%M:%S %p", /* t_fmt_ampm */
{ "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" },
{ "Sunday", "Monday", "Tuesday", "Wednesday",
"Thursday", "Friday", "Saturday" },
{ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep",
"Oct", "Nov", "Dec" },
{ "January", "February", "March", "April", "May", "June", "July",
"August", "September", "October", "November", "December" },
{ "AM", "PM" },
"", /* era */
"", /* era_year */
"", /* era_d_fmt */
"", /* alt_digits */
"", /* era_d_t_fmt */
"", /* era_t_fmt */
&__C_locale_object, /* loc_rec */
0, /* __meth_ptr */
0, /* __data_ptr */
};
_LC_resp_t _C_resp_object={
/*
** Object header info
*/
_LC_RESP, /* type_id */
_LC_MAGIC, /* magic */
_LC_VERSION, /* version */
0, /* size */
NL_RESPINFO,
RPMATCH_C,
RESP_INIT, /* init method */
0, /* void * data */
/*
** Class Extension Data
*/
"^[yY].*", /* yesexpr */
"^[nN].*", /* noexpr */
"yes:y:Y", /* yesstr */
"no:n:N", /* nostr */
&__C_locale_object, /* loc_rec */
0, /* __meth_ptr */
0, /* __data_ptr */
};
struct lconv __C_lconv={
".", /* decimal_point */
"", /* thousands_sep */
0, /* grouping */
"", /* int_curr_symbol */
"", /* currency_symbol */
"", /* mon_decimal_point */
"", /* mon_thousands_sep */
"", /* mon_grouping */
"", /* positive_sign */
"", /* negative_sign */
-1, /* int_frac_digits */
-1, /* frac_digits */
-1, /* p_cs_precedes */
-1, /* p_sep_by_space */
-1, /* n_cs_precedes */
-1, /* n_sep_by_space */
-1, /* p_sign_posn */
-1, /* n_sign_posn */
"", /* right parenthesis */
"" /* left parenthesis */
};
static _LC_locale_objhdl_t * init(_LC_locale_objhdl_t);
_LC_locale_t __C_locale_object={
_LC_LOCALE, _LC_MAGIC, _LC_VERSION, 0,
NL_LANGINFO_STD,
LOCALECONV_STD,
LOCALE_INIT, /* init method */
0, /* data pointer */
/* info strings */
"", /* NOT USED */
"%a %b %e %H:%M:%S %Y", /* d_t_fmt */
"%m/%d/%y", /* d_fmt */
"%H:%M:%S", /* t_fmt */
"AM", /* AM_STR */
"PM", /* PM_STR */
"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", /* ABDAY_x */
"Sunday", "Monday", "Tuesday", "Wednesday",
"Thursday", "Friday", "Saturday", /* DAY_x */
"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul",
"Aug", "Sep", "Oct", "Nov", "Dec", /* ABMON_x */
"January", "February", "March", "April", "May",
"June", "July", "August", "September", "October",
"November", "December", /* MON_x */
".", /* RADIXCHAR */
"", /* THOUSEP */
"yes:y:Y", /* YESSTR */
"no:n:N", /* NOSTR */
"", /* CRNCYSTR*/
"ISO8859-1", /* CODESET */
"%b %d %Y", /* NLLDATE */
"at:each:every:on:through:am:pm:zulu", /* NLTMISC */
/* NLTSTR */
"now:yesterday:tomorrow:noon:midnight:next:weekdays:weekend:today",
"minute:minutes:hour:hours:day:days:week:weeks:month:months:year:years:min:mins",
/* NLTUNITS */
"19890108,Heisei:19261225,Showa:", /* NLYEAR */
"", /* T_FMT_AMPM */
"", /* ERA */
"", /* ERA_D_FMT */
"", /* ERA_D_T_FMT */
"", /* ERA_T_FMT */
"", /* ALT_DIGITS */
"^[yY]", /* YESEXPR */
"^[nN]", /* NOEXPR */
&__C_lconv,
{ &_C_charmap_object,
&__method_tbl,
0,
},
{ &_C_collate_object,
&__method_tbl,
0,
},
{ &_C_ctype_object,
&__method_tbl,
0,
},
{ &_C_monetary_object,
&__method_tbl,
0,
},
{ &_C_numeric_object,
&__method_tbl,
0,
},
{ &_C_resp_object,
&__method_tbl,
0,
},
{ &_C_time_object,
&__method_tbl,
0,
},
&__C_locale_object, /* loc_rec */
0, /* __meth_ptr */
0, /* __data_ptr */
};
_LC_locale_objhdl_t _C_locale = {
&__C_locale_object,
&__method_tbl,
0,
};
_LC_charmap_objhdl_t __lc_charmap = {
&_C_charmap_object,
&__method_tbl,
0,
};
_LC_ctype_objhdl_t __lc_ctype = {
&_C_ctype_object,
&__method_tbl,
0,
};
_LC_collate_objhdl_t __lc_collate = {
&_C_collate_object,
&__method_tbl,
0,
};
_LC_numeric_objhdl_t __lc_numeric = {
&_C_numeric_object,
&__method_tbl,
0,
};
_LC_monetary_objhdl_t __lc_monetary = {
&_C_monetary_object,
&__method_tbl,
0,
};
_LC_time_objhdl_t __lc_time = {
&_C_time_object,
&__method_tbl,
0,
};
_LC_resp_objhdl_t __lc_resp = {
&_C_resp_object,
&__method_tbl,
0,
};
_LC_locale_objhdl_t __lc_locale = {
&__C_locale_object,
&__method_tbl,
0,
};
/*
* FUNCTION: collate_init
*
* DESCRIPTION:
* Initialization method for collate locale object.
*/
void __collate_init(_LC_locale_objhdl_t lp)
{
_LC_charmap_t *cmap = __OBJ_DATA(lp)->lc_charmap.obj;
#if 0
/*
reset 3.1 version of mb_cur_xxx to support 3.1 MB_CUR_xxx macros
*/
_locp->lc_chrtbl->mb_cur_max = cmap->cm_mb_cur_max;
_locp->lc_chrtbl->mb_cur_min = cmap->cm_mb_cur_min;
#endif
}
/*
* FUNCTION: ctype_init
*
* DESCRIPTION:
* Initialization method for ctype locale object.
*/
void __ctype_init(_LC_locale_objhdl_t lp)
{
_LC_charmap_t *cmap = __OBJ_DATA(lp)->lc_charmap.obj;
#if 0
/*
reset 3.1 version of mb_cur_max to support 3.1 MB_CUR_xxx macros
*/
_locp->lc_chrtbl->lc_caseconv = cmap->core.__data;
_locp->lc_chrtbl->mb_cur_max = cmap->cm_mb_cur_max;
_locp->lc_chrtbl->mb_cur_min = cmap->cm_mb_cur_min;
#endif
}
/*
* FUNCTION: __monetary_init
*
* DESCRIPTION:
* Initialization method for monetary locale object.
*/
void __monetary_init(_LC_locale_objhdl_t lp)
{
_LC_monetary_t *mon;
char **nl_info;
struct lconv *nl_lconv;
nl_info = __OBJ_DATA(lp)->nl_info;
nl_lconv = __OBJ_DATA(lp)->nl_lconv;
mon = __OBJ_DATA(lp)->lc_monetary.obj;
/* set nl_langinfo() information */
nl_info[CRNCYSTR] = mon->currency_symbol;
/* setup localeconv() structure */
nl_lconv->int_curr_symbol = mon->int_curr_symbol;
nl_lconv->currency_symbol = mon->currency_symbol;
nl_lconv->mon_decimal_point = mon->mon_decimal_point;
nl_lconv->mon_thousands_sep = mon->mon_thousands_sep;
nl_lconv->mon_grouping = mon->mon_grouping;
nl_lconv->positive_sign = mon->positive_sign;
nl_lconv->negative_sign = mon->negative_sign;
nl_lconv->int_frac_digits = mon->int_frac_digits;
nl_lconv->frac_digits = mon->frac_digits;
nl_lconv->p_cs_precedes = mon->p_cs_precedes;
nl_lconv->p_sep_by_space = mon->p_sep_by_space;
nl_lconv->n_cs_precedes = mon->n_cs_precedes;
nl_lconv->n_sep_by_space = mon->n_sep_by_space;
nl_lconv->p_sign_posn = mon->p_sign_posn;
nl_lconv->n_sign_posn = mon->n_sign_posn;
nl_lconv->left_parenthesis = mon->left_parenthesis;
nl_lconv->right_parenthesis = mon->right_parenthesis;
}
/*
* FUNCTION: __charmap_init
*
* DESCRIPTION:
* Locale charmap class object initialization method.
*/
void __charmap_init(_LC_locale_objhdl_t lp)
{
/* set nl_langinfo() information */
__OBJ_DATA(lp)->nl_info[CODESET] = __OBJ_DATA(lp)->lc_charmap.obj->cm_csname;
}
/*
* FUNCTION: __resp_init
*
* DESCRIPTION:
* Initialization method for the response class.
*/
void __resp_init(_LC_locale_objhdl_t lp)
{
_LC_resp_t *resp = __OBJ_DATA(lp)->lc_resp.obj;
__OBJ_DATA(lp)->nl_info[YESEXPR] = resp->yesexpr;
__OBJ_DATA(lp)->nl_info[NOEXPR] = resp->noexpr;
__OBJ_DATA(lp)->nl_info[YESSTR] = resp->yesstr;
__OBJ_DATA(lp)->nl_info[NOSTR] = resp->nostr;
}
/*
* FUNCTION: __numeric_init
*
* DESCRIPTION:
* Numeric category object initialization method.
*/
void __numeric_init(_LC_locale_objhdl_t lp)
{
_LC_numeric_t *num;
char **nl_info;
struct lconv *nl_lconv;
nl_info = __OBJ_DATA(lp)->nl_info;
nl_lconv = __OBJ_DATA(lp)->nl_lconv;
num = __OBJ_DATA(lp)->lc_numeric.obj;
/* set nl_langinfo() information */
nl_info[RADIXCHAR] = num->decimal_point;
nl_info[THOUSEP] = num->thousands_sep;
/* setup localeconv() lconv structure */
nl_lconv->decimal_point = num->decimal_point;
nl_lconv->thousands_sep = num->thousands_sep;
nl_lconv->grouping = num->grouping;
}
/*
* FUNCTION: __time_init
*
* DESCRIPTION:
* This is the initialization method for the time category
*/
void __time_init(_LC_locale_objhdl_t lp)
{
_LC_time_t *time;
char **nl_info;
nl_info = __OBJ_DATA(lp)->nl_info;
time = __OBJ_DATA(lp)->lc_time.obj;
/* set nl_langinfo() information */
nl_info[D_FMT] = time->d_fmt;
nl_info[T_FMT] = time->t_fmt;
nl_info[D_T_FMT] = time->d_t_fmt;
nl_info[AM_STR] = time->am_pm[0];
nl_info[PM_STR] = time->am_pm[1];
nl_info[ERA] = time->era;
nl_info[T_FMT_AMPM] = time->t_fmt_ampm;
nl_info[ERA_D_FMT] = time->era_d_fmt;
nl_info[ERA_T_FMT] = time->era_t_fmt;
nl_info[ERA_D_T_FMT] = time->era_d_t_fmt;
nl_info[ALT_DIGITS] = time->alt_digits;
/* copy abbreviate day name pointers ABDAY_x */
memcpy(&(nl_info[ABDAY_1]), &(time->abday[0]), 7 * sizeof(char *));
/* copy day name pointers DAY_x */
memcpy(&(nl_info[DAY_1]), &(time->day[0]), 7 * sizeof(char *));
/* copy abbreviated month name pointers ABMON_x */
memcpy(&(nl_info[ABMON_1]), &(time->abmon[0]), 12 * sizeof(char *));
/* copy month name pointers MON_x */
memcpy(&(nl_info[MON_1]), &(time->mon[0]), 12 * sizeof(char *));
}
/*
* FUNCTION: __locale_init
*
* DESCRIPTION:
* Initialization method for the locale handle.
*/
void __locale_init(_LC_locale_objhdl_t lp)
{
_CALLMETH(__OBJ_DATA(lp)->lc_charmap, __init)(lp);
_CALLMETH(__OBJ_DATA(lp)->lc_collate, __init)(lp);
_CALLMETH(__OBJ_DATA(lp)->lc_ctype, __init)(lp);
_CALLMETH(__OBJ_DATA(lp)->lc_monetary, __init)(lp);
_CALLMETH(__OBJ_DATA(lp)->lc_numeric, __init)(lp);
_CALLMETH(__OBJ_DATA(lp)->lc_resp, __init)(lp);
_CALLMETH(__OBJ_DATA(lp)->lc_time, __init)(lp);
}