1*16d86563SAlexander Pyhalov /*
2*16d86563SAlexander Pyhalov  * CDDL HEADER START
3*16d86563SAlexander Pyhalov  *
4*16d86563SAlexander Pyhalov  * The contents of this file are subject to the terms of the
5*16d86563SAlexander Pyhalov  * Common Development and Distribution License (the "License").
6*16d86563SAlexander Pyhalov  * You may not use this file except in compliance with the License.
7*16d86563SAlexander Pyhalov  *
8*16d86563SAlexander Pyhalov  * You can obtain a copy of the license at src/OPENSOLARIS.LICENSE
9*16d86563SAlexander Pyhalov  * or http://www.opensolaris.org/os/licensing.
10*16d86563SAlexander Pyhalov  * See the License for the specific language governing permissions
11*16d86563SAlexander Pyhalov  * and limitations under the License.
12*16d86563SAlexander Pyhalov  *
13*16d86563SAlexander Pyhalov  * When distributing Covered Code, include this CDDL HEADER in each
14*16d86563SAlexander Pyhalov  * file and include the License file at src/OPENSOLARIS.LICENSE.
15*16d86563SAlexander Pyhalov  * If applicable, add the following below this CDDL HEADER, with the
16*16d86563SAlexander Pyhalov  * fields enclosed by brackets "[]" replaced with your own identifying
17*16d86563SAlexander Pyhalov  * information: Portions Copyright [yyyy] [name of copyright owner]
18*16d86563SAlexander Pyhalov  *
19*16d86563SAlexander Pyhalov  * CDDL HEADER END
20*16d86563SAlexander Pyhalov  */
21*16d86563SAlexander Pyhalov /*
22*16d86563SAlexander Pyhalov  * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
23*16d86563SAlexander Pyhalov  * Use is subject to license terms.
24*16d86563SAlexander Pyhalov  */
25*16d86563SAlexander Pyhalov 
26*16d86563SAlexander Pyhalov #ifndef	UTF8_TO_SB_H
27*16d86563SAlexander Pyhalov #define	UTF8_TO_SB_H
28*16d86563SAlexander Pyhalov 
29*16d86563SAlexander Pyhalov 
30*16d86563SAlexander Pyhalov #include "common_defs.h"
31*16d86563SAlexander Pyhalov 
32*16d86563SAlexander Pyhalov 
33*16d86563SAlexander Pyhalov /*
34*16d86563SAlexander Pyhalov  * The values in u8 data field is a UTF-8 byte streams saved in uint_t and
35*16d86563SAlexander Pyhalov  * with that data field, we only cover characters from U+0000 to U+10 FFFF.
36*16d86563SAlexander Pyhalov  *
37*16d86563SAlexander Pyhalov  * IMPORTANT:
38*16d86563SAlexander Pyhalov  * Since we are using binary search on the table, especially, on u8 data
39*16d86563SAlexander Pyhalov  * field, the table should be sorted by ascending order on u8 data field.
40*16d86563SAlexander Pyhalov  */
41*16d86563SAlexander Pyhalov static const to_sb_table_component_t u8_sb_tbl[] = {
42*16d86563SAlexander Pyhalov #if defined(US_ASCII)
43*16d86563SAlexander Pyhalov #include "tbls/utf8_to_us-ascii.tbl"
44*16d86563SAlexander Pyhalov 
45*16d86563SAlexander Pyhalov #elif defined(ISO_8859_1)
46*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-1.tbl"
47*16d86563SAlexander Pyhalov 
48*16d86563SAlexander Pyhalov #elif defined(ISO_8859_2)
49*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-2.tbl"
50*16d86563SAlexander Pyhalov 
51*16d86563SAlexander Pyhalov #elif defined(ISO_8859_3)
52*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-3.tbl"
53*16d86563SAlexander Pyhalov 
54*16d86563SAlexander Pyhalov #elif defined(ISO_8859_4)
55*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-4.tbl"
56*16d86563SAlexander Pyhalov 
57*16d86563SAlexander Pyhalov #elif defined(ISO_8859_5)
58*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-5.tbl"
59*16d86563SAlexander Pyhalov 
60*16d86563SAlexander Pyhalov #elif defined(ISO_8859_6)
61*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-6.tbl"
62*16d86563SAlexander Pyhalov 
63*16d86563SAlexander Pyhalov #elif defined(ISO_8859_7)
64*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-7.tbl"
65*16d86563SAlexander Pyhalov 
66*16d86563SAlexander Pyhalov #elif defined(ISO_8859_8)
67*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-8.tbl"
68*16d86563SAlexander Pyhalov 
69*16d86563SAlexander Pyhalov #elif defined(ISO_8859_9)
70*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-9.tbl"
71*16d86563SAlexander Pyhalov 
72*16d86563SAlexander Pyhalov #elif defined(ISO_8859_10)
73*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-10.tbl"
74*16d86563SAlexander Pyhalov 
75*16d86563SAlexander Pyhalov #elif defined(ISO_8859_13)
76*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-13.tbl"
77*16d86563SAlexander Pyhalov 
78*16d86563SAlexander Pyhalov #elif defined(ISO_8859_14)
79*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-14.tbl"
80*16d86563SAlexander Pyhalov 
81*16d86563SAlexander Pyhalov #elif defined(ISO_8859_15)
82*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-15.tbl"
83*16d86563SAlexander Pyhalov 
84*16d86563SAlexander Pyhalov #elif defined(ISO_8859_16)
85*16d86563SAlexander Pyhalov #include "tbls/utf8_to_iso-8859-16.tbl"
86*16d86563SAlexander Pyhalov 
87*16d86563SAlexander Pyhalov #elif defined(KOI8_R)
88*16d86563SAlexander Pyhalov #include "tbls/utf8_to_koi8-r.tbl"
89*16d86563SAlexander Pyhalov 
90*16d86563SAlexander Pyhalov #elif defined(KOI8_U)
91*16d86563SAlexander Pyhalov #include "tbls/utf8_to_koi8-u.tbl"
92*16d86563SAlexander Pyhalov 
93*16d86563SAlexander Pyhalov #elif defined(PTCP154)
94*16d86563SAlexander Pyhalov #include "tbls/utf8_to_ptcp154.tbl"
95*16d86563SAlexander Pyhalov 
96*16d86563SAlexander Pyhalov #elif defined(CP437)
97*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp437.tbl"
98*16d86563SAlexander Pyhalov 
99*16d86563SAlexander Pyhalov #elif defined(CP720)
100*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp720.tbl"
101*16d86563SAlexander Pyhalov 
102*16d86563SAlexander Pyhalov #elif defined(CP737)
103*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp737.tbl"
104*16d86563SAlexander Pyhalov 
105*16d86563SAlexander Pyhalov #elif defined(CP775)
106*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp775.tbl"
107*16d86563SAlexander Pyhalov 
108*16d86563SAlexander Pyhalov #elif defined(CP850)
109*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp850.tbl"
110*16d86563SAlexander Pyhalov 
111*16d86563SAlexander Pyhalov #elif defined(CP852)
112*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp852.tbl"
113*16d86563SAlexander Pyhalov 
114*16d86563SAlexander Pyhalov #elif defined(CP855)
115*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp855.tbl"
116*16d86563SAlexander Pyhalov 
117*16d86563SAlexander Pyhalov #elif defined(CP857)
118*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp857.tbl"
119*16d86563SAlexander Pyhalov 
120*16d86563SAlexander Pyhalov #elif defined(CP860)
121*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp860.tbl"
122*16d86563SAlexander Pyhalov 
123*16d86563SAlexander Pyhalov #elif defined(CP861)
124*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp861.tbl"
125*16d86563SAlexander Pyhalov 
126*16d86563SAlexander Pyhalov #elif defined(CP862)
127*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp862.tbl"
128*16d86563SAlexander Pyhalov 
129*16d86563SAlexander Pyhalov #elif defined(CP863)
130*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp863.tbl"
131*16d86563SAlexander Pyhalov 
132*16d86563SAlexander Pyhalov #elif defined(CP864)
133*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp864.tbl"
134*16d86563SAlexander Pyhalov 
135*16d86563SAlexander Pyhalov #elif defined(CP865)
136*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp865.tbl"
137*16d86563SAlexander Pyhalov 
138*16d86563SAlexander Pyhalov #elif defined(CP866)
139*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp866.tbl"
140*16d86563SAlexander Pyhalov 
141*16d86563SAlexander Pyhalov #elif defined(CP869)
142*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp869.tbl"
143*16d86563SAlexander Pyhalov 
144*16d86563SAlexander Pyhalov #elif defined(CP874)
145*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp874.tbl"
146*16d86563SAlexander Pyhalov 
147*16d86563SAlexander Pyhalov #elif defined(CP1250)
148*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp1250.tbl"
149*16d86563SAlexander Pyhalov 
150*16d86563SAlexander Pyhalov #elif defined(CP1251)
151*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp1251.tbl"
152*16d86563SAlexander Pyhalov 
153*16d86563SAlexander Pyhalov #elif defined(CP1252)
154*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp1252.tbl"
155*16d86563SAlexander Pyhalov 
156*16d86563SAlexander Pyhalov #elif defined(CP1253)
157*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp1253.tbl"
158*16d86563SAlexander Pyhalov 
159*16d86563SAlexander Pyhalov #elif defined(CP1254)
160*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp1254.tbl"
161*16d86563SAlexander Pyhalov 
162*16d86563SAlexander Pyhalov #elif defined(CP1255)
163*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp1255.tbl"
164*16d86563SAlexander Pyhalov 
165*16d86563SAlexander Pyhalov #elif defined(CP1256)
166*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp1256.tbl"
167*16d86563SAlexander Pyhalov 
168*16d86563SAlexander Pyhalov #elif defined(CP1257)
169*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp1257.tbl"
170*16d86563SAlexander Pyhalov 
171*16d86563SAlexander Pyhalov #elif defined(CP1258)
172*16d86563SAlexander Pyhalov #include "tbls/utf8_to_cp1258.tbl"
173*16d86563SAlexander Pyhalov 
174*16d86563SAlexander Pyhalov #else
175*16d86563SAlexander Pyhalov #error	"Error - nothing defined."
176*16d86563SAlexander Pyhalov #endif
177*16d86563SAlexander Pyhalov };
178*16d86563SAlexander Pyhalov 
179*16d86563SAlexander Pyhalov #endif	/* UTF8_TO_SB_H */
180