1 /***********************************************************************
3 * This software is part of the ast package *
4 * Copyright (c) 1985-2010 AT&T Intellectual Property *
5 * and is licensed under the *
6 * Common Public License, Version 1.0 *
7 * by AT&T Intellectual Property *
9 * A copy of the License is available at *
10 * http://www.opensource.org/licenses/cpl1.0.txt *
11 * (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) *
13 * Information and Software Systems Research *
17 * Glenn Fowler <gsf@research.att.com> *
18 * David Korn <dgk@research.att.com> *
19 * Phong Vo <kpv@research.att.com> *
21 ***********************************************************************/
23 /* : : generated by proto : : */
24 /* : : generated by ./lcgen : : */
28 #if !defined(__PROTO__)
29 #include <prototyped.h>
31 #if !defined(__LINKAGE__)
32 #define __LINKAGE__ /* 2004-08-11 transition */
39 #define LC_abbreviated 0x00001
40 #define LC_checked 0x00002
41 #define LC_debug 0x00004
42 #define LC_default 0x00008
43 #define LC_defined 0x00010
44 #define LC_local 0x00020
45 #define LC_primary 0x00040
46 #define LC_qualified 0x00080
47 #define LC_undefined 0x00100
48 #define LC_utf8 0x00200
49 #define LC_verbose 0x00400
50 #define LC_setlocale 0x10000
51 #define LC_setenv 0x20000
52 #define LC_user 0x40000
53 #define LC_language_attribute_max 2
54 #define LC_territory_language_max 4
58 typedef struct Lc_info_s
60 const struct Lc_s
* lc
;
65 typedef struct Lc_attribute_s
72 typedef struct Lc_charset_s
75 const char* alternates
;
80 typedef struct Lc_language_s
84 const char* alternates
;
85 const Lc_charset_t
* charset
;
88 const Lc_attribute_t
* attributes
[LC_language_attribute_max
];
91 typedef struct Lc_territory_s
97 const Lc_language_t
* languages
[LC_territory_language_max
];
98 #ifdef _LC_TERRITORY_PRIVATE_
99 _LC_TERRITORY_PRIVATE_
103 typedef struct Lc_map_s
106 const Lc_language_t
* language
;
107 const Lc_territory_t
* territory
;
108 const Lc_charset_t
* charset
;
109 const Lc_attribute_t
* attribute
;
112 typedef struct Lc_attribute_list_s
114 struct Lc_attribute_list_s
* next
;
115 const Lc_attribute_t
* attribute
;
116 } Lc_attribute_list_t
;
122 const Lc_language_t
* language
;
123 const Lc_territory_t
* territory
;
124 const Lc_charset_t
* charset
;
125 const Lc_attribute_list_t
* attributes
;
133 struct Lc_category_s
;
135 typedef int (*Lc_category_set_f
) __PROTO__((struct Lc_category_s
*));
137 typedef struct Lc_category_s
142 Lc_category_set_f setf
;
147 #if _BLD_ast && defined(__EXPORT__)
149 #define __MANGLE__ __LINKAGE__ __EXPORT__
152 extern __MANGLE__
size_t lccanon
__PROTO__((Lc_t
*, unsigned long flags
, char*, size_t));
153 extern __MANGLE__ Lc_category_t
* lccategories
__PROTO__((void));
154 extern __MANGLE__
int lcindex
__PROTO__((int, int));
155 extern __MANGLE__ Lc_info_t
* lcinfo
__PROTO__((int));
156 extern __MANGLE__ Lc_t
* lcmake
__PROTO__((const char*));
157 extern __MANGLE__ Lc_t
* lcscan
__PROTO__((Lc_t
*));
160 #define __MANGLE__ __LINKAGE__