1/* ANSI-C code produced by gperf version 3.0.2 */
2/* Command-line: gperf -m 10 lib/aliases.gperf  */
3/* Computed positions: -k'4-7,10,$' */
4
5#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
6      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
7      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
8      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
9      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
10      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
11      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
12      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
13      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
14      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
15      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
16      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
17      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
18      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
19      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
20      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
21      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
22      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
23      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
24      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
25      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
26      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
27      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
28/* The character set is not based on ISO-646.  */
29#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
30#endif
31
32#line 1 "lib/aliases.gperf"
33struct alias { int name; unsigned int encoding_index; };
34
35#define TOTAL_KEYWORDS 70
36#define MIN_WORD_LENGTH 2
37#define MAX_WORD_LENGTH 17
38#define MIN_HASH_VALUE 4
39#define MAX_HASH_VALUE 98
40/* maximum key range = 95, duplicates = 0 */
41
42#ifdef __GNUC__
43__inline
44#else
45#ifdef __cplusplus
46inline
47#endif
48#endif
49static unsigned int
50aliases_hash (register const char *str, register unsigned int len)
51{
52  static const unsigned char asso_values[] =
53    {
54      99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
55      99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
56      99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
57      99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
58      99, 99, 99, 99, 99,  6, 99, 99, 22,  3,
59       2,  2, 17,  3,  2,  7,  3,  2, 99, 99,
60      99, 99, 99, 99, 99,  4, 53,  2, 21,  2,
61      99,  7, 99, 15, 99, 99, 19, 99, 33,  2,
62       4, 99, 11, 26, 17, 99, 99,  3, 26, 99,
63      99, 99, 99, 99, 99, 10, 99, 99, 99, 99,
64      99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
65      99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
66      99, 99, 99, 99, 99, 99, 99, 99
67    };
68  register int hval = len;
69
70  switch (hval)
71    {
72      default:
73        hval += asso_values[(unsigned char)str[9]];
74      /*FALLTHROUGH*/
75      case 9:
76      case 8:
77      case 7:
78        hval += asso_values[(unsigned char)str[6]];
79      /*FALLTHROUGH*/
80      case 6:
81        hval += asso_values[(unsigned char)str[5]];
82      /*FALLTHROUGH*/
83      case 5:
84        hval += asso_values[(unsigned char)str[4]];
85      /*FALLTHROUGH*/
86      case 4:
87        hval += asso_values[(unsigned char)str[3]];
88      /*FALLTHROUGH*/
89      case 3:
90      case 2:
91        break;
92    }
93  return hval + asso_values[(unsigned char)str[len - 1]];
94}
95
96struct stringpool_t
97  {
98    char stringpool_str4[sizeof("L2")];
99    char stringpool_str5[sizeof("L1")];
100    char stringpool_str11[sizeof("MS-EE")];
101    char stringpool_str12[sizeof("CP819")];
102    char stringpool_str15[sizeof("UCS-2")];
103    char stringpool_str16[sizeof("IBM819")];
104    char stringpool_str17[sizeof("UTF-8")];
105    char stringpool_str18[sizeof("UTF-32")];
106    char stringpool_str19[sizeof("UTF-16")];
107    char stringpool_str21[sizeof("CP367")];
108    char stringpool_str22[sizeof("ISO8859-2")];
109    char stringpool_str23[sizeof("ISO8859-1")];
110    char stringpool_str24[sizeof("IBM367")];
111    char stringpool_str25[sizeof("UTF-7")];
112    char stringpool_str26[sizeof("CHAR")];
113    char stringpool_str27[sizeof("ISO8859-15")];
114    char stringpool_str28[sizeof("US")];
115    char stringpool_str29[sizeof("ISO-8859-2")];
116    char stringpool_str31[sizeof("ISO-8859-1")];
117    char stringpool_str32[sizeof("ISO-8859-15")];
118    char stringpool_str33[sizeof("ISO_8859-2")];
119    char stringpool_str35[sizeof("ISO_8859-1")];
120    char stringpool_str36[sizeof("ISO_8859-15")];
121    char stringpool_str37[sizeof("KOI8-R")];
122    char stringpool_str38[sizeof("UCS-2LE")];
123    char stringpool_str39[sizeof("UTF-32LE")];
124    char stringpool_str40[sizeof("UTF-16LE")];
125    char stringpool_str41[sizeof("ISO_8859-15:1998")];
126    char stringpool_str43[sizeof("ISO_8859-2:1987")];
127    char stringpool_str44[sizeof("ISO_8859-1:1987")];
128    char stringpool_str45[sizeof("UCS-4")];
129    char stringpool_str47[sizeof("UNICODE-1-1")];
130    char stringpool_str48[sizeof("ISO-IR-6")];
131    char stringpool_str49[sizeof("CSKOI8R")];
132    char stringpool_str50[sizeof("ASCII")];
133    char stringpool_str51[sizeof("UNICODEBIG")];
134    char stringpool_str52[sizeof("ISO-IR-203")];
135    char stringpool_str53[sizeof("UCS-4LE")];
136    char stringpool_str54[sizeof("ISO-IR-101")];
137    char stringpool_str55[sizeof("CP1250")];
138    char stringpool_str56[sizeof("ISO-10646-UCS-2")];
139    char stringpool_str57[sizeof("UNICODE-1-1-UTF-7")];
140    char stringpool_str58[sizeof("LATIN2")];
141    char stringpool_str59[sizeof("UNICODELITTLE")];
142    char stringpool_str60[sizeof("LATIN1")];
143    char stringpool_str61[sizeof("ISO_646.IRV:1991")];
144    char stringpool_str62[sizeof("ISO646-US")];
145    char stringpool_str63[sizeof("CSUNICODE")];
146    char stringpool_str64[sizeof("UCS-2-INTERNAL")];
147    char stringpool_str65[sizeof("LATIN-9")];
148    char stringpool_str66[sizeof("WCHAR_T")];
149    char stringpool_str68[sizeof("CSUCS4")];
150    char stringpool_str69[sizeof("CSUNICODE11")];
151    char stringpool_str70[sizeof("US-ASCII")];
152    char stringpool_str71[sizeof("ISO-10646-UCS-4")];
153    char stringpool_str72[sizeof("UCS-2BE")];
154    char stringpool_str73[sizeof("UTF-32BE")];
155    char stringpool_str74[sizeof("UTF-16BE")];
156    char stringpool_str75[sizeof("ANSI_X3.4-1986")];
157    char stringpool_str76[sizeof("ANSI_X3.4-1968")];
158    char stringpool_str77[sizeof("CSUNICODE11UTF7")];
159    char stringpool_str78[sizeof("UCS-2-SWAPPED")];
160    char stringpool_str79[sizeof("UCS-4-INTERNAL")];
161    char stringpool_str80[sizeof("CSASCII")];
162    char stringpool_str87[sizeof("UCS-4BE")];
163    char stringpool_str88[sizeof("WINDOWS-1250")];
164    char stringpool_str92[sizeof("ISO-IR-100")];
165    char stringpool_str93[sizeof("UCS-4-SWAPPED")];
166    char stringpool_str97[sizeof("CSISOLATIN2")];
167    char stringpool_str98[sizeof("CSISOLATIN1")];
168  };
169static const struct stringpool_t stringpool_contents =
170  {
171    "L2",
172    "L1",
173    "MS-EE",
174    "CP819",
175    "UCS-2",
176    "IBM819",
177    "UTF-8",
178    "UTF-32",
179    "UTF-16",
180    "CP367",
181    "ISO8859-2",
182    "ISO8859-1",
183    "IBM367",
184    "UTF-7",
185    "CHAR",
186    "ISO8859-15",
187    "US",
188    "ISO-8859-2",
189    "ISO-8859-1",
190    "ISO-8859-15",
191    "ISO_8859-2",
192    "ISO_8859-1",
193    "ISO_8859-15",
194    "KOI8-R",
195    "UCS-2LE",
196    "UTF-32LE",
197    "UTF-16LE",
198    "ISO_8859-15:1998",
199    "ISO_8859-2:1987",
200    "ISO_8859-1:1987",
201    "UCS-4",
202    "UNICODE-1-1",
203    "ISO-IR-6",
204    "CSKOI8R",
205    "ASCII",
206    "UNICODEBIG",
207    "ISO-IR-203",
208    "UCS-4LE",
209    "ISO-IR-101",
210    "CP1250",
211    "ISO-10646-UCS-2",
212    "UNICODE-1-1-UTF-7",
213    "LATIN2",
214    "UNICODELITTLE",
215    "LATIN1",
216    "ISO_646.IRV:1991",
217    "ISO646-US",
218    "CSUNICODE",
219    "UCS-2-INTERNAL",
220    "LATIN-9",
221    "WCHAR_T",
222    "CSUCS4",
223    "CSUNICODE11",
224    "US-ASCII",
225    "ISO-10646-UCS-4",
226    "UCS-2BE",
227    "UTF-32BE",
228    "UTF-16BE",
229    "ANSI_X3.4-1986",
230    "ANSI_X3.4-1968",
231    "CSUNICODE11UTF7",
232    "UCS-2-SWAPPED",
233    "UCS-4-INTERNAL",
234    "CSASCII",
235    "UCS-4BE",
236    "WINDOWS-1250",
237    "ISO-IR-100",
238    "UCS-4-SWAPPED",
239    "CSISOLATIN2",
240    "CSISOLATIN1"
241  };
242#define stringpool ((const char *) &stringpool_contents)
243
244static const struct alias aliases[] =
245  {
246    {-1}, {-1}, {-1}, {-1},
247#line 66 "lib/aliases.gperf"
248    {(int)(long)&((struct stringpool_t *)0)->stringpool_str4, ei_iso8859_2},
249#line 58 "lib/aliases.gperf"
250    {(int)(long)&((struct stringpool_t *)0)->stringpool_str5, ei_iso8859_1},
251    {-1}, {-1}, {-1}, {-1}, {-1},
252#line 79 "lib/aliases.gperf"
253    {(int)(long)&((struct stringpool_t *)0)->stringpool_str11, ei_cp1250},
254#line 55 "lib/aliases.gperf"
255    {(int)(long)&((struct stringpool_t *)0)->stringpool_str12, ei_iso8859_1},
256    {-1}, {-1},
257#line 24 "lib/aliases.gperf"
258    {(int)(long)&((struct stringpool_t *)0)->stringpool_str15, ei_ucs2},
259#line 56 "lib/aliases.gperf"
260    {(int)(long)&((struct stringpool_t *)0)->stringpool_str16, ei_iso8859_1},
261#line 23 "lib/aliases.gperf"
262    {(int)(long)&((struct stringpool_t *)0)->stringpool_str17, ei_utf8},
263#line 41 "lib/aliases.gperf"
264    {(int)(long)&((struct stringpool_t *)0)->stringpool_str18, ei_utf32},
265#line 38 "lib/aliases.gperf"
266    {(int)(long)&((struct stringpool_t *)0)->stringpool_str19, ei_utf16},
267    {-1},
268#line 19 "lib/aliases.gperf"
269    {(int)(long)&((struct stringpool_t *)0)->stringpool_str21, ei_ascii},
270#line 68 "lib/aliases.gperf"
271    {(int)(long)&((struct stringpool_t *)0)->stringpool_str22, ei_iso8859_2},
272#line 60 "lib/aliases.gperf"
273    {(int)(long)&((struct stringpool_t *)0)->stringpool_str23, ei_iso8859_1},
274#line 20 "lib/aliases.gperf"
275    {(int)(long)&((struct stringpool_t *)0)->stringpool_str24, ei_ascii},
276#line 44 "lib/aliases.gperf"
277    {(int)(long)&((struct stringpool_t *)0)->stringpool_str25, ei_utf7},
278#line 80 "lib/aliases.gperf"
279    {(int)(long)&((struct stringpool_t *)0)->stringpool_str26, ei_local_char},
280#line 74 "lib/aliases.gperf"
281    {(int)(long)&((struct stringpool_t *)0)->stringpool_str27, ei_iso8859_15},
282#line 21 "lib/aliases.gperf"
283    {(int)(long)&((struct stringpool_t *)0)->stringpool_str28, ei_ascii},
284#line 61 "lib/aliases.gperf"
285    {(int)(long)&((struct stringpool_t *)0)->stringpool_str29, ei_iso8859_2},
286    {-1},
287#line 51 "lib/aliases.gperf"
288    {(int)(long)&((struct stringpool_t *)0)->stringpool_str31, ei_iso8859_1},
289#line 69 "lib/aliases.gperf"
290    {(int)(long)&((struct stringpool_t *)0)->stringpool_str32, ei_iso8859_15},
291#line 62 "lib/aliases.gperf"
292    {(int)(long)&((struct stringpool_t *)0)->stringpool_str33, ei_iso8859_2},
293    {-1},
294#line 52 "lib/aliases.gperf"
295    {(int)(long)&((struct stringpool_t *)0)->stringpool_str35, ei_iso8859_1},
296#line 70 "lib/aliases.gperf"
297    {(int)(long)&((struct stringpool_t *)0)->stringpool_str36, ei_iso8859_15},
298#line 75 "lib/aliases.gperf"
299    {(int)(long)&((struct stringpool_t *)0)->stringpool_str37, ei_koi8_r},
300#line 31 "lib/aliases.gperf"
301    {(int)(long)&((struct stringpool_t *)0)->stringpool_str38, ei_ucs2le},
302#line 43 "lib/aliases.gperf"
303    {(int)(long)&((struct stringpool_t *)0)->stringpool_str39, ei_utf32le},
304#line 40 "lib/aliases.gperf"
305    {(int)(long)&((struct stringpool_t *)0)->stringpool_str40, ei_utf16le},
306#line 71 "lib/aliases.gperf"
307    {(int)(long)&((struct stringpool_t *)0)->stringpool_str41, ei_iso8859_15},
308    {-1},
309#line 63 "lib/aliases.gperf"
310    {(int)(long)&((struct stringpool_t *)0)->stringpool_str43, ei_iso8859_2},
311#line 53 "lib/aliases.gperf"
312    {(int)(long)&((struct stringpool_t *)0)->stringpool_str44, ei_iso8859_1},
313#line 33 "lib/aliases.gperf"
314    {(int)(long)&((struct stringpool_t *)0)->stringpool_str45, ei_ucs4},
315    {-1},
316#line 29 "lib/aliases.gperf"
317    {(int)(long)&((struct stringpool_t *)0)->stringpool_str47, ei_ucs2be},
318#line 16 "lib/aliases.gperf"
319    {(int)(long)&((struct stringpool_t *)0)->stringpool_str48, ei_ascii},
320#line 76 "lib/aliases.gperf"
321    {(int)(long)&((struct stringpool_t *)0)->stringpool_str49, ei_koi8_r},
322#line 13 "lib/aliases.gperf"
323    {(int)(long)&((struct stringpool_t *)0)->stringpool_str50, ei_ascii},
324#line 28 "lib/aliases.gperf"
325    {(int)(long)&((struct stringpool_t *)0)->stringpool_str51, ei_ucs2be},
326#line 72 "lib/aliases.gperf"
327    {(int)(long)&((struct stringpool_t *)0)->stringpool_str52, ei_iso8859_15},
328#line 37 "lib/aliases.gperf"
329    {(int)(long)&((struct stringpool_t *)0)->stringpool_str53, ei_ucs4le},
330#line 64 "lib/aliases.gperf"
331    {(int)(long)&((struct stringpool_t *)0)->stringpool_str54, ei_iso8859_2},
332#line 77 "lib/aliases.gperf"
333    {(int)(long)&((struct stringpool_t *)0)->stringpool_str55, ei_cp1250},
334#line 25 "lib/aliases.gperf"
335    {(int)(long)&((struct stringpool_t *)0)->stringpool_str56, ei_ucs2},
336#line 45 "lib/aliases.gperf"
337    {(int)(long)&((struct stringpool_t *)0)->stringpool_str57, ei_utf7},
338#line 65 "lib/aliases.gperf"
339    {(int)(long)&((struct stringpool_t *)0)->stringpool_str58, ei_iso8859_2},
340#line 32 "lib/aliases.gperf"
341    {(int)(long)&((struct stringpool_t *)0)->stringpool_str59, ei_ucs2le},
342#line 57 "lib/aliases.gperf"
343    {(int)(long)&((struct stringpool_t *)0)->stringpool_str60, ei_iso8859_1},
344#line 15 "lib/aliases.gperf"
345    {(int)(long)&((struct stringpool_t *)0)->stringpool_str61, ei_ascii},
346#line 14 "lib/aliases.gperf"
347    {(int)(long)&((struct stringpool_t *)0)->stringpool_str62, ei_ascii},
348#line 26 "lib/aliases.gperf"
349    {(int)(long)&((struct stringpool_t *)0)->stringpool_str63, ei_ucs2},
350#line 47 "lib/aliases.gperf"
351    {(int)(long)&((struct stringpool_t *)0)->stringpool_str64, ei_ucs2internal},
352#line 73 "lib/aliases.gperf"
353    {(int)(long)&((struct stringpool_t *)0)->stringpool_str65, ei_iso8859_15},
354#line 81 "lib/aliases.gperf"
355    {(int)(long)&((struct stringpool_t *)0)->stringpool_str66, ei_local_wchar_t},
356    {-1},
357#line 35 "lib/aliases.gperf"
358    {(int)(long)&((struct stringpool_t *)0)->stringpool_str68, ei_ucs4},
359#line 30 "lib/aliases.gperf"
360    {(int)(long)&((struct stringpool_t *)0)->stringpool_str69, ei_ucs2be},
361#line 12 "lib/aliases.gperf"
362    {(int)(long)&((struct stringpool_t *)0)->stringpool_str70, ei_ascii},
363#line 34 "lib/aliases.gperf"
364    {(int)(long)&((struct stringpool_t *)0)->stringpool_str71, ei_ucs4},
365#line 27 "lib/aliases.gperf"
366    {(int)(long)&((struct stringpool_t *)0)->stringpool_str72, ei_ucs2be},
367#line 42 "lib/aliases.gperf"
368    {(int)(long)&((struct stringpool_t *)0)->stringpool_str73, ei_utf32be},
369#line 39 "lib/aliases.gperf"
370    {(int)(long)&((struct stringpool_t *)0)->stringpool_str74, ei_utf16be},
371#line 18 "lib/aliases.gperf"
372    {(int)(long)&((struct stringpool_t *)0)->stringpool_str75, ei_ascii},
373#line 17 "lib/aliases.gperf"
374    {(int)(long)&((struct stringpool_t *)0)->stringpool_str76, ei_ascii},
375#line 46 "lib/aliases.gperf"
376    {(int)(long)&((struct stringpool_t *)0)->stringpool_str77, ei_utf7},
377#line 48 "lib/aliases.gperf"
378    {(int)(long)&((struct stringpool_t *)0)->stringpool_str78, ei_ucs2swapped},
379#line 49 "lib/aliases.gperf"
380    {(int)(long)&((struct stringpool_t *)0)->stringpool_str79, ei_ucs4internal},
381#line 22 "lib/aliases.gperf"
382    {(int)(long)&((struct stringpool_t *)0)->stringpool_str80, ei_ascii},
383    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
384#line 36 "lib/aliases.gperf"
385    {(int)(long)&((struct stringpool_t *)0)->stringpool_str87, ei_ucs4be},
386#line 78 "lib/aliases.gperf"
387    {(int)(long)&((struct stringpool_t *)0)->stringpool_str88, ei_cp1250},
388    {-1}, {-1}, {-1},
389#line 54 "lib/aliases.gperf"
390    {(int)(long)&((struct stringpool_t *)0)->stringpool_str92, ei_iso8859_1},
391#line 50 "lib/aliases.gperf"
392    {(int)(long)&((struct stringpool_t *)0)->stringpool_str93, ei_ucs4swapped},
393    {-1}, {-1}, {-1},
394#line 67 "lib/aliases.gperf"
395    {(int)(long)&((struct stringpool_t *)0)->stringpool_str97, ei_iso8859_2},
396#line 59 "lib/aliases.gperf"
397    {(int)(long)&((struct stringpool_t *)0)->stringpool_str98, ei_iso8859_1}
398  };
399
400#ifdef __GNUC__
401__inline
402#endif
403const struct alias *
404aliases_lookup (register const char *str, register unsigned int len)
405{
406  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
407    {
408      register int key = aliases_hash (str, len);
409
410      if (key <= MAX_HASH_VALUE && key >= 0)
411        {
412          register int o = aliases[key].name;
413          if (o >= 0)
414            {
415              register const char *s = o + stringpool;
416
417              if (*str == *s && !strcmp (str + 1, s + 1))
418                return &aliases[key];
419            }
420        }
421    }
422  return 0;
423}
424