xapian-core  2.1.0
hungarian.cc
Go to the documentation of this file.
1 /* Generated from hungarian.sbl by Snowball 3.1.1 - https://snowballstem.org/ */
2 
3 #include <config.h>
4 
5 #define SNOWBALL_RUNTIME_THROW_EXCEPTIONS
6 #include "hungarian.h"
7 
8 #include <stddef.h>
9 
11 
12 static int r_double(struct SN_env * z);
13 static int r_undouble(struct SN_env * z);
14 
15 static const symbol s_0[] = { 'a' };
16 static const symbol s_1[] = { 'e' };
17 static const symbol s_2[] = { 'e' };
18 static const symbol s_3[] = { 'a' };
19 static const symbol s_4[] = { 'a' };
20 static const symbol s_5[] = { 'e' };
21 static const symbol s_6[] = { 'e' };
22 static const symbol s_7[] = { 'a' };
23 static const symbol s_8[] = { 'a' };
24 static const symbol s_9[] = { 'e' };
25 static const symbol s_10[] = { 'a' };
26 static const symbol s_11[] = { 'e' };
27 static const symbol s_12[] = { 'a' };
28 static const symbol s_13[] = { 'e' };
29 
30 static const symbol s_0_0[2] = { 0xC3, 0xA1 };
31 static const symbol s_0_1[2] = { 0xC3, 0xA9 };
32 static const struct among a_0[2] = {
33 { 2, s_0_0, 0, 1, 0},
34 { 2, s_0_1, 0, 2, 0}
35 };
36 
37 static const symbol s_1_0[2] = { 'b', 'b' };
38 static const symbol s_1_1[2] = { 'c', 'c' };
39 static const symbol s_1_2[2] = { 'd', 'd' };
40 static const symbol s_1_3[2] = { 'f', 'f' };
41 static const symbol s_1_4[2] = { 'g', 'g' };
42 static const symbol s_1_5[2] = { 'j', 'j' };
43 static const symbol s_1_6[2] = { 'k', 'k' };
44 static const symbol s_1_7[2] = { 'l', 'l' };
45 static const symbol s_1_8[2] = { 'm', 'm' };
46 static const symbol s_1_9[2] = { 'n', 'n' };
47 static const symbol s_1_10[2] = { 'p', 'p' };
48 static const symbol s_1_11[2] = { 'r', 'r' };
49 static const symbol s_1_12[3] = { 'c', 'c', 's' };
50 static const symbol s_1_13[2] = { 's', 's' };
51 static const symbol s_1_14[3] = { 'z', 'z', 's' };
52 static const symbol s_1_15[2] = { 't', 't' };
53 static const symbol s_1_16[2] = { 'v', 'v' };
54 static const symbol s_1_17[3] = { 'g', 'g', 'y' };
55 static const symbol s_1_18[3] = { 'l', 'l', 'y' };
56 static const symbol s_1_19[3] = { 'n', 'n', 'y' };
57 static const symbol s_1_20[3] = { 't', 't', 'y' };
58 static const symbol s_1_21[3] = { 's', 's', 'z' };
59 static const symbol s_1_22[2] = { 'z', 'z' };
60 static const struct among a_1[23] = {
61 { 2, s_1_0, 0, -1, 0},
62 { 2, s_1_1, 0, -1, 0},
63 { 2, s_1_2, 0, -1, 0},
64 { 2, s_1_3, 0, -1, 0},
65 { 2, s_1_4, 0, -1, 0},
66 { 2, s_1_5, 0, -1, 0},
67 { 2, s_1_6, 0, -1, 0},
68 { 2, s_1_7, 0, -1, 0},
69 { 2, s_1_8, 0, -1, 0},
70 { 2, s_1_9, 0, -1, 0},
71 { 2, s_1_10, 0, -1, 0},
72 { 2, s_1_11, 0, -1, 0},
73 { 3, s_1_12, 0, -1, 0},
74 { 2, s_1_13, 0, -1, 0},
75 { 3, s_1_14, 0, -1, 0},
76 { 2, s_1_15, 0, -1, 0},
77 { 2, s_1_16, 0, -1, 0},
78 { 3, s_1_17, 0, -1, 0},
79 { 3, s_1_18, 0, -1, 0},
80 { 3, s_1_19, 0, -1, 0},
81 { 3, s_1_20, 0, -1, 0},
82 { 3, s_1_21, 0, -1, 0},
83 { 2, s_1_22, 0, -1, 0}
84 };
85 
86 static const symbol s_2_0[2] = { 'a', 'l' };
87 static const symbol s_2_1[2] = { 'e', 'l' };
88 static const struct among a_2[2] = {
89 { 2, s_2_0, 0, 1, 0},
90 { 2, s_2_1, 0, 1, 0}
91 };
92 
93 static const symbol s_3_0[2] = { 'b', 'a' };
94 static const symbol s_3_1[2] = { 'r', 'a' };
95 static const symbol s_3_2[2] = { 'b', 'e' };
96 static const symbol s_3_3[2] = { 'r', 'e' };
97 static const symbol s_3_4[2] = { 'i', 'g' };
98 static const symbol s_3_5[3] = { 'n', 'a', 'k' };
99 static const symbol s_3_6[3] = { 'n', 'e', 'k' };
100 static const symbol s_3_7[3] = { 'v', 'a', 'l' };
101 static const symbol s_3_8[3] = { 'v', 'e', 'l' };
102 static const symbol s_3_9[2] = { 'u', 'l' };
103 static const symbol s_3_10[4] = { 'b', 0xC5, 0x91, 'l' };
104 static const symbol s_3_11[4] = { 'r', 0xC5, 0x91, 'l' };
105 static const symbol s_3_12[4] = { 't', 0xC5, 0x91, 'l' };
106 static const symbol s_3_13[4] = { 'n', 0xC3, 0xA1, 'l' };
107 static const symbol s_3_14[4] = { 'n', 0xC3, 0xA9, 'l' };
108 static const symbol s_3_15[4] = { 'b', 0xC3, 0xB3, 'l' };
109 static const symbol s_3_16[4] = { 'r', 0xC3, 0xB3, 'l' };
110 static const symbol s_3_17[4] = { 't', 0xC3, 0xB3, 'l' };
111 static const symbol s_3_18[3] = { 0xC3, 0xBC, 'l' };
112 static const symbol s_3_19[1] = { 'n' };
113 static const symbol s_3_20[2] = { 'a', 'n' };
114 static const symbol s_3_21[3] = { 'b', 'a', 'n' };
115 static const symbol s_3_22[2] = { 'e', 'n' };
116 static const symbol s_3_23[3] = { 'b', 'e', 'n' };
117 static const symbol s_3_24[7] = { 'k', 0xC3, 0xA9, 'p', 'p', 'e', 'n' };
118 static const symbol s_3_25[2] = { 'o', 'n' };
119 static const symbol s_3_26[3] = { 0xC3, 0xB6, 'n' };
120 static const symbol s_3_27[5] = { 'k', 0xC3, 0xA9, 'p', 'p' };
121 static const symbol s_3_28[3] = { 'k', 'o', 'r' };
122 static const symbol s_3_29[1] = { 't' };
123 static const symbol s_3_30[2] = { 'a', 't' };
124 static const symbol s_3_31[2] = { 'e', 't' };
125 static const symbol s_3_32[5] = { 'k', 0xC3, 0xA9, 'n', 't' };
126 static const symbol s_3_33[7] = { 'a', 'n', 'k', 0xC3, 0xA9, 'n', 't' };
127 static const symbol s_3_34[7] = { 'e', 'n', 'k', 0xC3, 0xA9, 'n', 't' };
128 static const symbol s_3_35[7] = { 'o', 'n', 'k', 0xC3, 0xA9, 'n', 't' };
129 static const symbol s_3_36[2] = { 'o', 't' };
130 static const symbol s_3_37[4] = { 0xC3, 0xA9, 'r', 't' };
131 static const symbol s_3_38[3] = { 0xC3, 0xB6, 't' };
132 static const symbol s_3_39[3] = { 'h', 'e', 'z' };
133 static const symbol s_3_40[3] = { 'h', 'o', 'z' };
134 static const symbol s_3_41[4] = { 'h', 0xC3, 0xB6, 'z' };
135 static const symbol s_3_42[3] = { 'v', 0xC3, 0xA1 };
136 static const symbol s_3_43[3] = { 'v', 0xC3, 0xA9 };
137 static const struct among a_3[44] = {
138 { 2, s_3_0, 0, -1, 0},
139 { 2, s_3_1, 0, -1, 0},
140 { 2, s_3_2, 0, -1, 0},
141 { 2, s_3_3, 0, -1, 0},
142 { 2, s_3_4, 0, -1, 0},
143 { 3, s_3_5, 0, -1, 0},
144 { 3, s_3_6, 0, -1, 0},
145 { 3, s_3_7, 0, -1, 0},
146 { 3, s_3_8, 0, -1, 0},
147 { 2, s_3_9, 0, -1, 0},
148 { 4, s_3_10, 0, -1, 0},
149 { 4, s_3_11, 0, -1, 0},
150 { 4, s_3_12, 0, -1, 0},
151 { 4, s_3_13, 0, -1, 0},
152 { 4, s_3_14, 0, -1, 0},
153 { 4, s_3_15, 0, -1, 0},
154 { 4, s_3_16, 0, -1, 0},
155 { 4, s_3_17, 0, -1, 0},
156 { 3, s_3_18, 0, -1, 0},
157 { 1, s_3_19, 0, -1, 0},
158 { 2, s_3_20, -1, -1, 0},
159 { 3, s_3_21, -1, -1, 0},
160 { 2, s_3_22, -3, -1, 0},
161 { 3, s_3_23, -1, -1, 0},
162 { 7, s_3_24, -2, -1, 0},
163 { 2, s_3_25, -6, -1, 0},
164 { 3, s_3_26, -7, -1, 0},
165 { 5, s_3_27, 0, -1, 0},
166 { 3, s_3_28, 0, -1, 0},
167 { 1, s_3_29, 0, -1, 0},
168 { 2, s_3_30, -1, -1, 0},
169 { 2, s_3_31, -2, -1, 0},
170 { 5, s_3_32, -3, -1, 0},
171 { 7, s_3_33, -1, -1, 0},
172 { 7, s_3_34, -2, -1, 0},
173 { 7, s_3_35, -3, -1, 0},
174 { 2, s_3_36, -7, -1, 0},
175 { 4, s_3_37, -8, -1, 0},
176 { 3, s_3_38, -9, -1, 0},
177 { 3, s_3_39, 0, -1, 0},
178 { 3, s_3_40, 0, -1, 0},
179 { 4, s_3_41, 0, -1, 0},
180 { 3, s_3_42, 0, -1, 0},
181 { 3, s_3_43, 0, -1, 0}
182 };
183 
184 static const symbol s_4_0[3] = { 0xC3, 0xA1, 'n' };
185 static const symbol s_4_1[3] = { 0xC3, 0xA9, 'n' };
186 static const symbol s_4_2[8] = { 0xC3, 0xA1, 'n', 'k', 0xC3, 0xA9, 'n', 't' };
187 static const struct among a_4[3] = {
188 { 3, s_4_0, 0, 2, 0},
189 { 3, s_4_1, 0, 1, 0},
190 { 8, s_4_2, 0, 2, 0}
191 };
192 
193 static const symbol s_5_0[4] = { 's', 't', 'u', 'l' };
194 static const symbol s_5_1[5] = { 'a', 's', 't', 'u', 'l' };
195 static const symbol s_5_2[6] = { 0xC3, 0xA1, 's', 't', 'u', 'l' };
196 static const symbol s_5_3[5] = { 's', 't', 0xC3, 0xBC, 'l' };
197 static const symbol s_5_4[6] = { 'e', 's', 't', 0xC3, 0xBC, 'l' };
198 static const symbol s_5_5[7] = { 0xC3, 0xA9, 's', 't', 0xC3, 0xBC, 'l' };
199 static const struct among a_5[6] = {
200 { 4, s_5_0, 0, 1, 0},
201 { 5, s_5_1, -1, 1, 0},
202 { 6, s_5_2, -2, 2, 0},
203 { 5, s_5_3, 0, 1, 0},
204 { 6, s_5_4, -1, 1, 0},
205 { 7, s_5_5, -2, 3, 0}
206 };
207 
208 static const symbol s_6_0[2] = { 0xC3, 0xA1 };
209 static const symbol s_6_1[2] = { 0xC3, 0xA9 };
210 static const struct among a_6[2] = {
211 { 2, s_6_0, 0, 1, 0},
212 { 2, s_6_1, 0, 1, 0}
213 };
214 
215 static const symbol s_7_0[1] = { 'k' };
216 static const symbol s_7_1[2] = { 'a', 'k' };
217 static const symbol s_7_2[2] = { 'e', 'k' };
218 static const symbol s_7_3[2] = { 'o', 'k' };
219 static const symbol s_7_4[3] = { 0xC3, 0xA1, 'k' };
220 static const symbol s_7_5[3] = { 0xC3, 0xA9, 'k' };
221 static const symbol s_7_6[3] = { 0xC3, 0xB6, 'k' };
222 static const struct among a_7[7] = {
223 { 1, s_7_0, 0, 3, 0},
224 { 2, s_7_1, -1, 3, 0},
225 { 2, s_7_2, -2, 3, 0},
226 { 2, s_7_3, -3, 3, 0},
227 { 3, s_7_4, -4, 1, 0},
228 { 3, s_7_5, -5, 2, 0},
229 { 3, s_7_6, -6, 3, 0}
230 };
231 
232 static const symbol s_8_0[3] = { 0xC3, 0xA9, 'i' };
233 static const symbol s_8_1[5] = { 0xC3, 0xA1, 0xC3, 0xA9, 'i' };
234 static const symbol s_8_2[5] = { 0xC3, 0xA9, 0xC3, 0xA9, 'i' };
235 static const symbol s_8_3[2] = { 0xC3, 0xA9 };
236 static const symbol s_8_4[3] = { 'k', 0xC3, 0xA9 };
237 static const symbol s_8_5[4] = { 'a', 'k', 0xC3, 0xA9 };
238 static const symbol s_8_6[4] = { 'e', 'k', 0xC3, 0xA9 };
239 static const symbol s_8_7[4] = { 'o', 'k', 0xC3, 0xA9 };
240 static const symbol s_8_8[5] = { 0xC3, 0xA1, 'k', 0xC3, 0xA9 };
241 static const symbol s_8_9[5] = { 0xC3, 0xA9, 'k', 0xC3, 0xA9 };
242 static const symbol s_8_10[5] = { 0xC3, 0xB6, 'k', 0xC3, 0xA9 };
243 static const symbol s_8_11[4] = { 0xC3, 0xA9, 0xC3, 0xA9 };
244 static const struct among a_8[12] = {
245 { 3, s_8_0, 0, 1, 0},
246 { 5, s_8_1, -1, 3, 0},
247 { 5, s_8_2, -2, 2, 0},
248 { 2, s_8_3, 0, 1, 0},
249 { 3, s_8_4, -1, 1, 0},
250 { 4, s_8_5, -1, 1, 0},
251 { 4, s_8_6, -2, 1, 0},
252 { 4, s_8_7, -3, 1, 0},
253 { 5, s_8_8, -4, 3, 0},
254 { 5, s_8_9, -5, 2, 0},
255 { 5, s_8_10, -6, 1, 0},
256 { 4, s_8_11, -8, 2, 0}
257 };
258 
259 static const symbol s_9_0[1] = { 'a' };
260 static const symbol s_9_1[2] = { 'j', 'a' };
261 static const symbol s_9_2[1] = { 'd' };
262 static const symbol s_9_3[2] = { 'a', 'd' };
263 static const symbol s_9_4[2] = { 'e', 'd' };
264 static const symbol s_9_5[2] = { 'o', 'd' };
265 static const symbol s_9_6[3] = { 0xC3, 0xA1, 'd' };
266 static const symbol s_9_7[3] = { 0xC3, 0xA9, 'd' };
267 static const symbol s_9_8[3] = { 0xC3, 0xB6, 'd' };
268 static const symbol s_9_9[1] = { 'e' };
269 static const symbol s_9_10[2] = { 'j', 'e' };
270 static const symbol s_9_11[2] = { 'n', 'k' };
271 static const symbol s_9_12[3] = { 'u', 'n', 'k' };
272 static const symbol s_9_13[4] = { 0xC3, 0xA1, 'n', 'k' };
273 static const symbol s_9_14[4] = { 0xC3, 0xA9, 'n', 'k' };
274 static const symbol s_9_15[4] = { 0xC3, 0xBC, 'n', 'k' };
275 static const symbol s_9_16[2] = { 'u', 'k' };
276 static const symbol s_9_17[3] = { 'j', 'u', 'k' };
277 static const symbol s_9_18[5] = { 0xC3, 0xA1, 'j', 'u', 'k' };
278 static const symbol s_9_19[3] = { 0xC3, 0xBC, 'k' };
279 static const symbol s_9_20[4] = { 'j', 0xC3, 0xBC, 'k' };
280 static const symbol s_9_21[6] = { 0xC3, 0xA9, 'j', 0xC3, 0xBC, 'k' };
281 static const symbol s_9_22[1] = { 'm' };
282 static const symbol s_9_23[2] = { 'a', 'm' };
283 static const symbol s_9_24[2] = { 'e', 'm' };
284 static const symbol s_9_25[2] = { 'o', 'm' };
285 static const symbol s_9_26[3] = { 0xC3, 0xA1, 'm' };
286 static const symbol s_9_27[3] = { 0xC3, 0xA9, 'm' };
287 static const symbol s_9_28[1] = { 'o' };
288 static const symbol s_9_29[2] = { 0xC3, 0xA1 };
289 static const symbol s_9_30[2] = { 0xC3, 0xA9 };
290 static const struct among a_9[31] = {
291 { 1, s_9_0, 0, 1, 0},
292 { 2, s_9_1, -1, 1, 0},
293 { 1, s_9_2, 0, 1, 0},
294 { 2, s_9_3, -1, 1, 0},
295 { 2, s_9_4, -2, 1, 0},
296 { 2, s_9_5, -3, 1, 0},
297 { 3, s_9_6, -4, 2, 0},
298 { 3, s_9_7, -5, 3, 0},
299 { 3, s_9_8, -6, 1, 0},
300 { 1, s_9_9, 0, 1, 0},
301 { 2, s_9_10, -1, 1, 0},
302 { 2, s_9_11, 0, 1, 0},
303 { 3, s_9_12, -1, 1, 0},
304 { 4, s_9_13, -2, 2, 0},
305 { 4, s_9_14, -3, 3, 0},
306 { 4, s_9_15, -4, 1, 0},
307 { 2, s_9_16, 0, 1, 0},
308 { 3, s_9_17, -1, 1, 0},
309 { 5, s_9_18, -1, 2, 0},
310 { 3, s_9_19, 0, 1, 0},
311 { 4, s_9_20, -1, 1, 0},
312 { 6, s_9_21, -1, 3, 0},
313 { 1, s_9_22, 0, 1, 0},
314 { 2, s_9_23, -1, 1, 0},
315 { 2, s_9_24, -2, 1, 0},
316 { 2, s_9_25, -3, 1, 0},
317 { 3, s_9_26, -4, 2, 0},
318 { 3, s_9_27, -5, 3, 0},
319 { 1, s_9_28, 0, 1, 0},
320 { 2, s_9_29, 0, 2, 0},
321 { 2, s_9_30, 0, 3, 0}
322 };
323 
324 static const symbol s_10_0[2] = { 'i', 'd' };
325 static const symbol s_10_1[3] = { 'a', 'i', 'd' };
326 static const symbol s_10_2[4] = { 'j', 'a', 'i', 'd' };
327 static const symbol s_10_3[3] = { 'e', 'i', 'd' };
328 static const symbol s_10_4[4] = { 'j', 'e', 'i', 'd' };
329 static const symbol s_10_5[4] = { 0xC3, 0xA1, 'i', 'd' };
330 static const symbol s_10_6[4] = { 0xC3, 0xA9, 'i', 'd' };
331 static const symbol s_10_7[1] = { 'i' };
332 static const symbol s_10_8[2] = { 'a', 'i' };
333 static const symbol s_10_9[3] = { 'j', 'a', 'i' };
334 static const symbol s_10_10[2] = { 'e', 'i' };
335 static const symbol s_10_11[3] = { 'j', 'e', 'i' };
336 static const symbol s_10_12[3] = { 0xC3, 0xA1, 'i' };
337 static const symbol s_10_13[3] = { 0xC3, 0xA9, 'i' };
338 static const symbol s_10_14[4] = { 'i', 't', 'e', 'k' };
339 static const symbol s_10_15[5] = { 'e', 'i', 't', 'e', 'k' };
340 static const symbol s_10_16[6] = { 'j', 'e', 'i', 't', 'e', 'k' };
341 static const symbol s_10_17[6] = { 0xC3, 0xA9, 'i', 't', 'e', 'k' };
342 static const symbol s_10_18[2] = { 'i', 'k' };
343 static const symbol s_10_19[3] = { 'a', 'i', 'k' };
344 static const symbol s_10_20[4] = { 'j', 'a', 'i', 'k' };
345 static const symbol s_10_21[3] = { 'e', 'i', 'k' };
346 static const symbol s_10_22[4] = { 'j', 'e', 'i', 'k' };
347 static const symbol s_10_23[4] = { 0xC3, 0xA1, 'i', 'k' };
348 static const symbol s_10_24[4] = { 0xC3, 0xA9, 'i', 'k' };
349 static const symbol s_10_25[3] = { 'i', 'n', 'k' };
350 static const symbol s_10_26[4] = { 'a', 'i', 'n', 'k' };
351 static const symbol s_10_27[5] = { 'j', 'a', 'i', 'n', 'k' };
352 static const symbol s_10_28[4] = { 'e', 'i', 'n', 'k' };
353 static const symbol s_10_29[5] = { 'j', 'e', 'i', 'n', 'k' };
354 static const symbol s_10_30[5] = { 0xC3, 0xA1, 'i', 'n', 'k' };
355 static const symbol s_10_31[5] = { 0xC3, 0xA9, 'i', 'n', 'k' };
356 static const symbol s_10_32[5] = { 'a', 'i', 't', 'o', 'k' };
357 static const symbol s_10_33[6] = { 'j', 'a', 'i', 't', 'o', 'k' };
358 static const symbol s_10_34[6] = { 0xC3, 0xA1, 'i', 't', 'o', 'k' };
359 static const symbol s_10_35[2] = { 'i', 'm' };
360 static const symbol s_10_36[3] = { 'a', 'i', 'm' };
361 static const symbol s_10_37[4] = { 'j', 'a', 'i', 'm' };
362 static const symbol s_10_38[3] = { 'e', 'i', 'm' };
363 static const symbol s_10_39[4] = { 'j', 'e', 'i', 'm' };
364 static const symbol s_10_40[4] = { 0xC3, 0xA1, 'i', 'm' };
365 static const symbol s_10_41[4] = { 0xC3, 0xA9, 'i', 'm' };
366 static const struct among a_10[42] = {
367 { 2, s_10_0, 0, 1, 0},
368 { 3, s_10_1, -1, 1, 0},
369 { 4, s_10_2, -1, 1, 0},
370 { 3, s_10_3, -3, 1, 0},
371 { 4, s_10_4, -1, 1, 0},
372 { 4, s_10_5, -5, 2, 0},
373 { 4, s_10_6, -6, 3, 0},
374 { 1, s_10_7, 0, 1, 0},
375 { 2, s_10_8, -1, 1, 0},
376 { 3, s_10_9, -1, 1, 0},
377 { 2, s_10_10, -3, 1, 0},
378 { 3, s_10_11, -1, 1, 0},
379 { 3, s_10_12, -5, 2, 0},
380 { 3, s_10_13, -6, 3, 0},
381 { 4, s_10_14, 0, 1, 0},
382 { 5, s_10_15, -1, 1, 0},
383 { 6, s_10_16, -1, 1, 0},
384 { 6, s_10_17, -3, 3, 0},
385 { 2, s_10_18, 0, 1, 0},
386 { 3, s_10_19, -1, 1, 0},
387 { 4, s_10_20, -1, 1, 0},
388 { 3, s_10_21, -3, 1, 0},
389 { 4, s_10_22, -1, 1, 0},
390 { 4, s_10_23, -5, 2, 0},
391 { 4, s_10_24, -6, 3, 0},
392 { 3, s_10_25, 0, 1, 0},
393 { 4, s_10_26, -1, 1, 0},
394 { 5, s_10_27, -1, 1, 0},
395 { 4, s_10_28, -3, 1, 0},
396 { 5, s_10_29, -1, 1, 0},
397 { 5, s_10_30, -5, 2, 0},
398 { 5, s_10_31, -6, 3, 0},
399 { 5, s_10_32, 0, 1, 0},
400 { 6, s_10_33, -1, 1, 0},
401 { 6, s_10_34, 0, 2, 0},
402 { 2, s_10_35, 0, 1, 0},
403 { 3, s_10_36, -1, 1, 0},
404 { 4, s_10_37, -1, 1, 0},
405 { 3, s_10_38, -3, 1, 0},
406 { 4, s_10_39, -1, 1, 0},
407 { 4, s_10_40, -5, 2, 0},
408 { 4, s_10_41, -6, 3, 0}
409 };
410 
411 static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 36, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1 };
412 
413 static int r_double(struct SN_env * z) {
414  {
415  int v_1 = z->l - z->c;
416  if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((106790108 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
417  if (!find_among_b(z, a_1, 23, 0)) return 0;
418  z->c = z->l - v_1;
419  }
420  return 1;
421 }
422 
423 static int r_undouble(struct SN_env * z) {
424  {
425  int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
426  if (ret < 0) return 0;
427  z->c = ret;
428  }
429  z->ket = z->c;
430  {
431  int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
432  if (ret < 0) return 0;
433  z->c = ret;
434  }
435  z->bra = z->c;
436  slice_del(z);
437  return 1;
438 }
439 
441  int among_var;
442  int i_p1;
443  {
444  int v_1 = z->c;
445  i_p1 = z->l;
446  do {
447  int v_2 = z->c;
448  if (in_grouping_U(z, g_v, 97, 369, 0)) goto lab1;
449  {
450  int v_3 = z->c;
451  {
452  int ret = in_grouping_U(z, g_v, 97, 369, 1);
453  if (ret < 0) goto lab2;
454  z->c += ret;
455  }
456  i_p1 = z->c;
457  lab2:
458  z->c = v_3;
459  }
460  break;
461  lab1:
462  z->c = v_2;
463  {
464  int ret = out_grouping_U(z, g_v, 97, 369, 1);
465  if (ret < 0) goto lab0;
466  z->c += ret;
467  }
468  i_p1 = z->c;
469  } while (0);
470  lab0:
471  z->c = v_1;
472  }
473  z->lb = z->c; z->c = z->l;
474  {
475  int v_4 = z->l - z->c;
476  z->ket = z->c;
477  if (z->c - 1 <= z->lb || z->p[z->c - 1] != 108) goto lab3;
478  if (!find_among_b(z, a_2, 2, 0)) goto lab3;
479  z->bra = z->c;
480  if (i_p1 > z->c) goto lab3;
481  if (!r_double(z)) goto lab3;
482  slice_del(z);
483  if (!r_undouble(z)) goto lab3;
484  lab3:
485  z->c = z->l - v_4;
486  }
487  {
488  int v_5 = z->l - z->c;
489  z->ket = z->c;
490  if (!find_among_b(z, a_3, 44, 0)) goto lab4;
491  z->bra = z->c;
492  if (i_p1 > z->c) goto lab4;
493  slice_del(z);
494  z->ket = z->c;
495  if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 161 && z->p[z->c - 1] != 169)) goto lab4;
496  among_var = find_among_b(z, a_0, 2, 0);
497  if (!among_var) goto lab4;
498  z->bra = z->c;
499  if (i_p1 > z->c) goto lab4;
500  switch (among_var) {
501  case 1:
502  slice_from_s(z, 1, s_0);
503  break;
504  case 2:
505  slice_from_s(z, 1, s_1);
506  break;
507  }
508  lab4:
509  z->c = z->l - v_5;
510  }
511  {
512  int v_6 = z->l - z->c;
513  z->ket = z->c;
514  if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 110 && z->p[z->c - 1] != 116)) goto lab5;
515  among_var = find_among_b(z, a_4, 3, 0);
516  if (!among_var) goto lab5;
517  z->bra = z->c;
518  if (i_p1 > z->c) goto lab5;
519  switch (among_var) {
520  case 1:
521  slice_from_s(z, 1, s_2);
522  break;
523  case 2:
524  slice_from_s(z, 1, s_3);
525  break;
526  }
527  lab5:
528  z->c = z->l - v_6;
529  }
530  {
531  int v_7 = z->l - z->c;
532  z->ket = z->c;
533  if (z->c - 3 <= z->lb || z->p[z->c - 1] != 108) goto lab6;
534  among_var = find_among_b(z, a_5, 6, 0);
535  if (!among_var) goto lab6;
536  z->bra = z->c;
537  if (i_p1 > z->c) goto lab6;
538  switch (among_var) {
539  case 1:
540  slice_del(z);
541  break;
542  case 2:
543  slice_from_s(z, 1, s_4);
544  break;
545  case 3:
546  slice_from_s(z, 1, s_5);
547  break;
548  }
549  lab6:
550  z->c = z->l - v_7;
551  }
552  {
553  int v_8 = z->l - z->c;
554  z->ket = z->c;
555  if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 161 && z->p[z->c - 1] != 169)) goto lab7;
556  if (!find_among_b(z, a_6, 2, 0)) goto lab7;
557  z->bra = z->c;
558  if (i_p1 > z->c) goto lab7;
559  if (!r_double(z)) goto lab7;
560  slice_del(z);
561  if (!r_undouble(z)) goto lab7;
562  lab7:
563  z->c = z->l - v_8;
564  }
565  {
566  int v_9 = z->l - z->c;
567  z->ket = z->c;
568  if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 169)) goto lab8;
569  among_var = find_among_b(z, a_8, 12, 0);
570  if (!among_var) goto lab8;
571  z->bra = z->c;
572  if (i_p1 > z->c) goto lab8;
573  switch (among_var) {
574  case 1:
575  slice_del(z);
576  break;
577  case 2:
578  slice_from_s(z, 1, s_6);
579  break;
580  case 3:
581  slice_from_s(z, 1, s_7);
582  break;
583  }
584  lab8:
585  z->c = z->l - v_9;
586  }
587  {
588  int v_10 = z->l - z->c;
589  z->ket = z->c;
590  among_var = find_among_b(z, a_9, 31, 0);
591  if (!among_var) goto lab9;
592  z->bra = z->c;
593  if (i_p1 > z->c) goto lab9;
594  switch (among_var) {
595  case 1:
596  slice_del(z);
597  break;
598  case 2:
599  slice_from_s(z, 1, s_8);
600  break;
601  case 3:
602  slice_from_s(z, 1, s_9);
603  break;
604  }
605  lab9:
606  z->c = z->l - v_10;
607  }
608  {
609  int v_11 = z->l - z->c;
610  z->ket = z->c;
611  if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((10768 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab10;
612  among_var = find_among_b(z, a_10, 42, 0);
613  if (!among_var) goto lab10;
614  z->bra = z->c;
615  if (i_p1 > z->c) goto lab10;
616  switch (among_var) {
617  case 1:
618  slice_del(z);
619  break;
620  case 2:
621  slice_from_s(z, 1, s_10);
622  break;
623  case 3:
624  slice_from_s(z, 1, s_11);
625  break;
626  }
627  lab10:
628  z->c = z->l - v_11;
629  }
630  {
631  int v_12 = z->l - z->c;
632  z->ket = z->c;
633  if (z->c <= z->lb || z->p[z->c - 1] != 107) goto lab11;
634  among_var = find_among_b(z, a_7, 7, 0);
635  if (!among_var) goto lab11;
636  z->bra = z->c;
637  if (i_p1 > z->c) goto lab11;
638  switch (among_var) {
639  case 1:
640  slice_from_s(z, 1, s_12);
641  break;
642  case 2:
643  slice_from_s(z, 1, s_13);
644  break;
645  case 3:
646  slice_del(z);
647  break;
648  }
649  lab11:
650  z->c = z->l - v_12;
651  }
652  z->c = z->lb;
653  return 1;
654 }
unsigned char symbol
Definition: api.h:4
static int stem(struct SN_env *z)
Definition: hungarian.cc:440
static const symbol s_3_14[4]
Definition: hungarian.cc:107
static const symbol s_3_8[3]
Definition: hungarian.cc:101
static const symbol s_3_26[3]
Definition: hungarian.cc:119
static const symbol s_1_5[2]
Definition: hungarian.cc:42
static const symbol s_2[]
Definition: hungarian.cc:17
static const symbol s_9_6[3]
Definition: hungarian.cc:265
static const symbol s_10_27[5]
Definition: hungarian.cc:351
static const symbol s_1_13[2]
Definition: hungarian.cc:50
static const struct among a_2[2]
Definition: hungarian.cc:88
static const symbol s_3_32[5]
Definition: hungarian.cc:125
static const symbol s_7_3[2]
Definition: hungarian.cc:218
static const symbol s_10_1[3]
Definition: hungarian.cc:325
static const symbol s_3_36[2]
Definition: hungarian.cc:129
static const symbol s_8_7[4]
Definition: hungarian.cc:239
static const symbol s_10_36[3]
Definition: hungarian.cc:360
static const symbol s_4[]
Definition: hungarian.cc:19
static const symbol s_9_29[2]
Definition: hungarian.cc:288
static const symbol s_10_24[4]
Definition: hungarian.cc:348
static const symbol s_3_15[4]
Definition: hungarian.cc:108
static const symbol s_1_9[2]
Definition: hungarian.cc:46
static const symbol s_4_1[3]
Definition: hungarian.cc:185
static const symbol s_1_12[3]
Definition: hungarian.cc:49
static const symbol s_3_7[3]
Definition: hungarian.cc:100
static const symbol s_1_6[2]
Definition: hungarian.cc:43
static const symbol s_10_38[3]
Definition: hungarian.cc:362
static const symbol s_9_28[1]
Definition: hungarian.cc:287
static const symbol s_9_0[1]
Definition: hungarian.cc:259
static const symbol s_3_41[4]
Definition: hungarian.cc:134
static const symbol s_1_2[2]
Definition: hungarian.cc:39
static const symbol s_9_22[1]
Definition: hungarian.cc:281
static const symbol s_10_20[4]
Definition: hungarian.cc:344
static const symbol s_3_4[2]
Definition: hungarian.cc:97
static const symbol s_3_29[1]
Definition: hungarian.cc:122
static const symbol s_3_1[2]
Definition: hungarian.cc:94
static const symbol s_5_0[4]
Definition: hungarian.cc:193
static int r_double(struct SN_env *z)
Definition: hungarian.cc:413
static const struct among a_4[3]
Definition: hungarian.cc:187
static const symbol s_0_1[2]
Definition: hungarian.cc:31
static const symbol s_10_4[4]
Definition: hungarian.cc:328
static const struct among a_10[42]
Definition: hungarian.cc:366
static const symbol s_5_3[5]
Definition: hungarian.cc:196
static const symbol s_2_0[2]
Definition: hungarian.cc:86
static const symbol s_1_3[2]
Definition: hungarian.cc:40
static const struct among a_0[2]
Definition: hungarian.cc:32
static const symbol s_9_11[2]
Definition: hungarian.cc:270
static const symbol s_10_31[5]
Definition: hungarian.cc:355
static const symbol s_9_24[2]
Definition: hungarian.cc:283
static const symbol s_1_0[2]
Definition: hungarian.cc:37
static const symbol s_3_42[3]
Definition: hungarian.cc:135
static const symbol s_6[]
Definition: hungarian.cc:21
static const symbol s_10_16[6]
Definition: hungarian.cc:340
static const symbol s_3_21[3]
Definition: hungarian.cc:114
static const symbol s_0_0[2]
Definition: hungarian.cc:30
static const symbol s_9_9[1]
Definition: hungarian.cc:268
static const symbol s_3_22[2]
Definition: hungarian.cc:115
static const symbol s_8_10[5]
Definition: hungarian.cc:242
static const symbol s_3[]
Definition: hungarian.cc:18
static const symbol s_3_31[2]
Definition: hungarian.cc:124
static const symbol s_3_0[2]
Definition: hungarian.cc:93
static const symbol s_10_34[6]
Definition: hungarian.cc:358
static const symbol s_9_12[3]
Definition: hungarian.cc:271
static const symbol s_8_8[5]
Definition: hungarian.cc:240
static const symbol s_10_15[5]
Definition: hungarian.cc:339
static const symbol s_3_24[7]
Definition: hungarian.cc:117
static const symbol s_10_37[4]
Definition: hungarian.cc:361
static const symbol s_1_15[2]
Definition: hungarian.cc:52
static const symbol s_1_19[3]
Definition: hungarian.cc:56
static const symbol s_10_29[5]
Definition: hungarian.cc:353
static const symbol s_7[]
Definition: hungarian.cc:22
static const symbol s_5_1[5]
Definition: hungarian.cc:194
static const symbol s_8_0[3]
Definition: hungarian.cc:232
static const symbol s_3_38[3]
Definition: hungarian.cc:131
static const symbol s_10_39[4]
Definition: hungarian.cc:363
static const symbol s_3_11[4]
Definition: hungarian.cc:104
static const symbol s_13[]
Definition: hungarian.cc:28
static const symbol s_1_7[2]
Definition: hungarian.cc:44
static const struct among a_6[2]
Definition: hungarian.cc:210
static const symbol s_9_30[2]
Definition: hungarian.cc:289
static const symbol s_10_35[2]
Definition: hungarian.cc:359
static const symbol s_10_7[1]
Definition: hungarian.cc:331
static const symbol s_7_5[3]
Definition: hungarian.cc:220
static const symbol s_1_1[2]
Definition: hungarian.cc:38
static const symbol s_3_10[4]
Definition: hungarian.cc:103
static const symbol s_9_21[6]
Definition: hungarian.cc:280
static const symbol s_10_11[3]
Definition: hungarian.cc:335
static int r_undouble(struct SN_env *z)
Definition: hungarian.cc:423
static const symbol s_10_17[6]
Definition: hungarian.cc:341
static const symbol s_3_33[7]
Definition: hungarian.cc:126
static const symbol s_8_3[2]
Definition: hungarian.cc:235
static const symbol s_9_23[2]
Definition: hungarian.cc:282
static const symbol s_3_39[3]
Definition: hungarian.cc:132
static const symbol s_3_35[7]
Definition: hungarian.cc:128
static const symbol s_3_12[4]
Definition: hungarian.cc:105
static const symbol s_1_21[3]
Definition: hungarian.cc:58
static const symbol s_3_37[4]
Definition: hungarian.cc:130
static const symbol s_9_15[4]
Definition: hungarian.cc:274
static const symbol s_7_1[2]
Definition: hungarian.cc:216
static const symbol s_3_18[3]
Definition: hungarian.cc:111
static const symbol s_9_1[2]
Definition: hungarian.cc:260
static const symbol s_9_8[3]
Definition: hungarian.cc:267
static const symbol s_3_30[2]
Definition: hungarian.cc:123
static const symbol s_10_30[5]
Definition: hungarian.cc:354
static const symbol s_9_27[3]
Definition: hungarian.cc:286
static const symbol s_5_5[7]
Definition: hungarian.cc:198
static const symbol s_10_25[3]
Definition: hungarian.cc:349
static const symbol s_4_2[8]
Definition: hungarian.cc:186
static const symbol s_9_18[5]
Definition: hungarian.cc:277
static const symbol s_3_3[2]
Definition: hungarian.cc:96
static const symbol s_1_14[3]
Definition: hungarian.cc:51
static const symbol s_10_40[4]
Definition: hungarian.cc:364
static const symbol s_3_6[3]
Definition: hungarian.cc:99
static const struct among a_1[23]
Definition: hungarian.cc:60
static const symbol s_8_11[4]
Definition: hungarian.cc:243
static const symbol s_5_4[6]
Definition: hungarian.cc:197
static const symbol s_10_3[3]
Definition: hungarian.cc:327
static const symbol s_9_17[3]
Definition: hungarian.cc:276
static const symbol s_3_5[3]
Definition: hungarian.cc:98
static const symbol s_3_9[2]
Definition: hungarian.cc:102
static const symbol s_3_19[1]
Definition: hungarian.cc:112
static const symbol s_9_26[3]
Definition: hungarian.cc:285
static const symbol s_9_5[2]
Definition: hungarian.cc:264
static const symbol s_1_11[2]
Definition: hungarian.cc:48
static const symbol s_1_18[3]
Definition: hungarian.cc:55
static const struct among a_7[7]
Definition: hungarian.cc:222
static const symbol s_8_2[5]
Definition: hungarian.cc:234
static const symbol s_7_2[2]
Definition: hungarian.cc:217
static const symbol s_10_41[4]
Definition: hungarian.cc:365
static const symbol s_10[]
Definition: hungarian.cc:25
static const symbol s_9_2[1]
Definition: hungarian.cc:261
static const symbol s_10_9[3]
Definition: hungarian.cc:333
static const symbol s_3_28[3]
Definition: hungarian.cc:121
static const symbol s_8_1[5]
Definition: hungarian.cc:233
static const struct among a_9[31]
Definition: hungarian.cc:290
static const symbol s_1_10[2]
Definition: hungarian.cc:47
static const symbol s_1[]
Definition: hungarian.cc:16
static const symbol s_3_40[3]
Definition: hungarian.cc:133
static const symbol s_3_34[7]
Definition: hungarian.cc:127
static const symbol s_3_17[4]
Definition: hungarian.cc:110
static const symbol s_1_8[2]
Definition: hungarian.cc:45
static const symbol s_3_43[3]
Definition: hungarian.cc:136
static const symbol s_10_8[2]
Definition: hungarian.cc:332
static const symbol s_3_27[5]
Definition: hungarian.cc:120
static const symbol s_1_4[2]
Definition: hungarian.cc:41
static const symbol s_9_3[2]
Definition: hungarian.cc:262
static const symbol s_8_4[3]
Definition: hungarian.cc:236
static const symbol s_10_19[3]
Definition: hungarian.cc:343
static const symbol s_9_25[2]
Definition: hungarian.cc:284
static const symbol s_10_13[3]
Definition: hungarian.cc:337
static const symbol s_10_33[6]
Definition: hungarian.cc:357
static const symbol s_9_4[2]
Definition: hungarian.cc:263
static const symbol s_11[]
Definition: hungarian.cc:26
static const symbol s_12[]
Definition: hungarian.cc:27
static const symbol s_6_1[2]
Definition: hungarian.cc:209
static const symbol s_10_32[5]
Definition: hungarian.cc:356
static const symbol s_9_19[3]
Definition: hungarian.cc:278
static const symbol s_3_13[4]
Definition: hungarian.cc:106
static const symbol s_9_20[4]
Definition: hungarian.cc:279
static const struct among a_8[12]
Definition: hungarian.cc:244
static const symbol s_9_7[3]
Definition: hungarian.cc:266
static const symbol s_8_9[5]
Definition: hungarian.cc:241
static const symbol s_10_18[2]
Definition: hungarian.cc:342
static const symbol s_10_26[4]
Definition: hungarian.cc:350
static const symbol s_7_4[3]
Definition: hungarian.cc:219
static const symbol s_10_0[2]
Definition: hungarian.cc:324
static const symbol s_10_22[4]
Definition: hungarian.cc:346
static const symbol s_7_0[1]
Definition: hungarian.cc:215
static const symbol s_10_14[4]
Definition: hungarian.cc:338
static const symbol s_1_17[3]
Definition: hungarian.cc:54
static const symbol s_10_2[4]
Definition: hungarian.cc:326
static const struct among a_3[44]
Definition: hungarian.cc:137
static const symbol s_3_20[2]
Definition: hungarian.cc:113
static const symbol s_10_6[4]
Definition: hungarian.cc:330
Xapian::Internal::Snowball::Hungarian::SN_local SN_local
Definition: hungarian.cc:10
static const symbol s_1_16[2]
Definition: hungarian.cc:53
static const symbol s_3_25[2]
Definition: hungarian.cc:118
static const symbol s_5_2[6]
Definition: hungarian.cc:195
static const symbol s_8_6[4]
Definition: hungarian.cc:238
static const symbol s_9_14[4]
Definition: hungarian.cc:273
static const struct among a_5[6]
Definition: hungarian.cc:199
static const symbol s_9_10[2]
Definition: hungarian.cc:269
static const symbol s_7_6[3]
Definition: hungarian.cc:221
static const symbol s_10_23[4]
Definition: hungarian.cc:347
static const symbol s_9_13[4]
Definition: hungarian.cc:272
static const symbol s_2_1[2]
Definition: hungarian.cc:87
static const unsigned char g_v[]
Definition: hungarian.cc:411
static const symbol s_10_21[3]
Definition: hungarian.cc:345
static const symbol s_1_22[2]
Definition: hungarian.cc:59
static const symbol s_1_20[3]
Definition: hungarian.cc:57
static const symbol s_8_5[4]
Definition: hungarian.cc:237
static const symbol s_6_0[2]
Definition: hungarian.cc:208
static const symbol s_10_5[4]
Definition: hungarian.cc:329
static const symbol s_10_12[3]
Definition: hungarian.cc:336
static const symbol s_8[]
Definition: hungarian.cc:23
static const symbol s_9[]
Definition: hungarian.cc:24
static const symbol s_3_2[2]
Definition: hungarian.cc:95
static const symbol s_5[]
Definition: hungarian.cc:20
static const symbol s_10_10[2]
Definition: hungarian.cc:334
static const symbol s_9_16[2]
Definition: hungarian.cc:275
static const symbol s_3_23[3]
Definition: hungarian.cc:116
static const symbol s_4_0[3]
Definition: hungarian.cc:184
static const symbol s_3_16[4]
Definition: hungarian.cc:109
static const symbol s_10_28[4]
Definition: hungarian.cc:352
static const symbol s_0[]
Definition: hungarian.cc:15
int out_grouping_U(struct SN_env *z, const unsigned char *s, int min, int max, int repeat)
int in_grouping_U(struct SN_env *z, const unsigned char *s, int min, int max, int repeat)
SNOWBALL_ERR slice_from_s(struct SN_env *z, int s_size, const symbol *s)
int find_among_b(struct SN_env *z, const struct among *v, int v_size, int(*call_among_func)(struct SN_env *))
int skip_b_utf8(const symbol *p, int c, int limit, int n)
SNOWBALL_ERR slice_del(struct SN_env *z)
Definition: api.h:12
int lb
Definition: api.h:14
symbol * p
Definition: api.h:13
int ket
Definition: api.h:14
int c
Definition: api.h:14
int bra
Definition: api.h:14
int l
Definition: api.h:14
Definition: header.h:295