Branch data Line data Source code
1 : : /* This file was generated automatically by the Snowball to ISO C++ compiler */
2 : :
3 : : #include <limits.h>
4 : : #include "italian.h"
5 : :
6 : : static const symbol s_pool[] = {
7 : : #define s_0_1 0
8 : : 'q', 'u',
9 : : #define s_0_2 2
10 : : 0xC3, 0xA1,
11 : : #define s_0_3 4
12 : : 0xC3, 0xA9,
13 : : #define s_0_4 6
14 : : 0xC3, 0xAD,
15 : : #define s_0_5 8
16 : : 0xC3, 0xB3,
17 : : #define s_0_6 10
18 : : 0xC3, 0xBA,
19 : : #define s_1_1 12
20 : : 'I',
21 : : #define s_1_2 13
22 : : 'U',
23 : : #define s_2_0 (s_2_1 + 2)
24 : : #define s_2_1 14
25 : : 'c', 'e', 'l', 'a',
26 : : #define s_2_2 18
27 : : 'g', 'l', 'i', 'e', 'l', 'a',
28 : : #define s_2_3 24
29 : : 'm', 'e', 'l', 'a',
30 : : #define s_2_4 28
31 : : 't', 'e', 'l', 'a',
32 : : #define s_2_5 32
33 : : 'v', 'e', 'l', 'a',
34 : : #define s_2_6 (s_2_7 + 2)
35 : : #define s_2_7 36
36 : : 'c', 'e', 'l', 'e',
37 : : #define s_2_8 40
38 : : 'g', 'l', 'i', 'e', 'l', 'e',
39 : : #define s_2_9 46
40 : : 'm', 'e', 'l', 'e',
41 : : #define s_2_10 50
42 : : 't', 'e', 'l', 'e',
43 : : #define s_2_11 54
44 : : 'v', 'e', 'l', 'e',
45 : : #define s_2_12 (s_2_13 + 2)
46 : : #define s_2_13 58
47 : : 'c', 'e', 'n', 'e',
48 : : #define s_2_14 62
49 : : 'g', 'l', 'i', 'e', 'n', 'e',
50 : : #define s_2_15 68
51 : : 'm', 'e', 'n', 'e',
52 : : #define s_2_16 72
53 : : 's', 'e', 'n', 'e',
54 : : #define s_2_17 76
55 : : 't', 'e', 'n', 'e',
56 : : #define s_2_18 80
57 : : 'v', 'e', 'n', 'e',
58 : : #define s_2_19 84
59 : : 'c', 'i',
60 : : #define s_2_20 (s_2_2 + 1)
61 : : #define s_2_21 86
62 : : 'c', 'e', 'l', 'i',
63 : : #define s_2_22 90
64 : : 'g', 'l', 'i', 'e', 'l', 'i',
65 : : #define s_2_23 96
66 : : 'm', 'e', 'l', 'i',
67 : : #define s_2_24 100
68 : : 't', 'e', 'l', 'i',
69 : : #define s_2_25 104
70 : : 'v', 'e', 'l', 'i',
71 : : #define s_2_26 s_2_2
72 : : #define s_2_27 108
73 : : 'm', 'i',
74 : : #define s_2_28 110
75 : : 's', 'i',
76 : : #define s_2_29 112
77 : : 't', 'i',
78 : : #define s_2_30 114
79 : : 'v', 'i',
80 : : #define s_2_31 (s_2_32 + 2)
81 : : #define s_2_32 116
82 : : 'c', 'e', 'l', 'o',
83 : : #define s_2_33 120
84 : : 'g', 'l', 'i', 'e', 'l', 'o',
85 : : #define s_2_34 126
86 : : 'm', 'e', 'l', 'o',
87 : : #define s_2_35 130
88 : : 't', 'e', 'l', 'o',
89 : : #define s_2_36 134
90 : : 'v', 'e', 'l', 'o',
91 : : #define s_3_0 138
92 : : 'a', 'n', 'd', 'o',
93 : : #define s_3_1 142
94 : : 'e', 'n', 'd', 'o',
95 : : #define s_3_2 146
96 : : 'a', 'r',
97 : : #define s_3_3 148
98 : : 'e', 'r',
99 : : #define s_3_4 150
100 : : 'i', 'r',
101 : : #define s_4_0 152
102 : : 'i', 'c',
103 : : #define s_4_1 154
104 : : 'a', 'b', 'i', 'l',
105 : : #define s_4_2 158
106 : : 'o', 's',
107 : : #define s_4_3 160
108 : : 'i', 'v',
109 : : #define s_5_0 162
110 : : 'i', 'c',
111 : : #define s_5_1 164
112 : : 'a', 'b', 'i', 'l',
113 : : #define s_5_2 168
114 : : 'i', 'v',
115 : : #define s_6_0 170
116 : : 'i', 'c', 'a',
117 : : #define s_6_1 173
118 : : 'l', 'o', 'g', 'i', 'a',
119 : : #define s_6_2 178
120 : : 'o', 's', 'a',
121 : : #define s_6_3 181
122 : : 'i', 's', 't', 'a',
123 : : #define s_6_4 185
124 : : 'i', 'v', 'a',
125 : : #define s_6_5 188
126 : : 'a', 'n', 'z', 'a',
127 : : #define s_6_6 192
128 : : 'e', 'n', 'z', 'a',
129 : : #define s_6_7 (s_6_8 + 3)
130 : : #define s_6_8 196
131 : : 'a', 't', 'r', 'i', 'c', 'e',
132 : : #define s_6_9 202
133 : : 'i', 'c', 'h', 'e',
134 : : #define s_6_10 206
135 : : 'l', 'o', 'g', 'i', 'e',
136 : : #define s_6_11 211
137 : : 'a', 'b', 'i', 'l', 'e',
138 : : #define s_6_12 216
139 : : 'i', 'b', 'i', 'l', 'e',
140 : : #define s_6_13 221
141 : : 'u', 's', 'i', 'o', 'n', 'e',
142 : : #define s_6_14 227
143 : : 'a', 'z', 'i', 'o', 'n', 'e',
144 : : #define s_6_15 233
145 : : 'u', 'z', 'i', 'o', 'n', 'e',
146 : : #define s_6_16 239
147 : : 'a', 't', 'o', 'r', 'e',
148 : : #define s_6_17 244
149 : : 'o', 's', 'e',
150 : : #define s_6_18 247
151 : : 'a', 'n', 't', 'e',
152 : : #define s_6_19 (s_6_20 + 1)
153 : : #define s_6_20 251
154 : : 'a', 'm', 'e', 'n', 't', 'e',
155 : : #define s_6_21 257
156 : : 'i', 's', 't', 'e',
157 : : #define s_6_22 261
158 : : 'i', 'v', 'e',
159 : : #define s_6_23 264
160 : : 'a', 'n', 'z', 'e',
161 : : #define s_6_24 268
162 : : 'e', 'n', 'z', 'e',
163 : : #define s_6_25 (s_6_26 + 3)
164 : : #define s_6_26 272
165 : : 'a', 't', 'r', 'i', 'c', 'i',
166 : : #define s_6_27 278
167 : : 'i', 'c', 'h', 'i',
168 : : #define s_6_28 282
169 : : 'a', 'b', 'i', 'l', 'i',
170 : : #define s_6_29 287
171 : : 'i', 'b', 'i', 'l', 'i',
172 : : #define s_6_30 292
173 : : 'i', 's', 'm', 'i',
174 : : #define s_6_31 296
175 : : 'u', 's', 'i', 'o', 'n', 'i',
176 : : #define s_6_32 302
177 : : 'a', 'z', 'i', 'o', 'n', 'i',
178 : : #define s_6_33 308
179 : : 'u', 'z', 'i', 'o', 'n', 'i',
180 : : #define s_6_34 314
181 : : 'a', 't', 'o', 'r', 'i',
182 : : #define s_6_35 319
183 : : 'o', 's', 'i',
184 : : #define s_6_36 322
185 : : 'a', 'n', 't', 'i',
186 : : #define s_6_37 326
187 : : 'a', 'm', 'e', 'n', 't', 'i',
188 : : #define s_6_38 332
189 : : 'i', 'm', 'e', 'n', 't', 'i',
190 : : #define s_6_39 338
191 : : 'i', 's', 't', 'i',
192 : : #define s_6_40 342
193 : : 'i', 'v', 'i',
194 : : #define s_6_41 345
195 : : 'i', 'c', 'o',
196 : : #define s_6_42 348
197 : : 'i', 's', 'm', 'o',
198 : : #define s_6_43 352
199 : : 'o', 's', 'o',
200 : : #define s_6_44 355
201 : : 'a', 'm', 'e', 'n', 't', 'o',
202 : : #define s_6_45 361
203 : : 'i', 'm', 'e', 'n', 't', 'o',
204 : : #define s_6_46 367
205 : : 'i', 'v', 'o',
206 : : #define s_6_47 370
207 : : 'i', 't', 0xC3, 0xA0,
208 : : #define s_6_48 374
209 : : 'i', 's', 't', 0xC3, 0xA0,
210 : : #define s_6_49 379
211 : : 'i', 's', 't', 0xC3, 0xA8,
212 : : #define s_6_50 384
213 : : 'i', 's', 't', 0xC3, 0xAC,
214 : : #define s_7_0 s_7_59
215 : : #define s_7_1 389
216 : : 'e', 'n', 'd', 'a',
217 : : #define s_7_2 393
218 : : 'a', 't', 'a',
219 : : #define s_7_3 396
220 : : 'i', 't', 'a',
221 : : #define s_7_4 399
222 : : 'u', 't', 'a',
223 : : #define s_7_5 s_7_17
224 : : #define s_7_6 s_7_18
225 : : #define s_7_7 s_7_19
226 : : #define s_7_8 s_7_70
227 : : #define s_7_9 s_7_71
228 : : #define s_7_10 402
229 : : 'i', 's', 'c', 'e',
230 : : #define s_7_11 406
231 : : 'e', 'n', 'd', 'e',
232 : : #define s_7_12 410
233 : : 'a', 'r', 'e',
234 : : #define s_7_13 s_7_8
235 : : #define s_7_14 s_7_9
236 : : #define s_7_15 s_7_72
237 : : #define s_7_16 (s_7_17 + 2)
238 : : #define s_7_17 413
239 : : 'a', 'v', 'a', 't', 'e',
240 : : #define s_7_18 418
241 : : 'e', 'v', 'a', 't', 'e',
242 : : #define s_7_19 423
243 : : 'i', 'v', 'a', 't', 'e',
244 : : #define s_7_20 (s_7_21 + 2)
245 : : #define s_7_21 428
246 : : 'e', 'r', 'e', 't', 'e',
247 : : #define s_7_22 433
248 : : 'i', 'r', 'e', 't', 'e',
249 : : #define s_7_23 438
250 : : 'i', 't', 'e',
251 : : #define s_7_24 441
252 : : 'e', 'r', 'e', 's', 't', 'e',
253 : : #define s_7_25 447
254 : : 'i', 'r', 'e', 's', 't', 'e',
255 : : #define s_7_26 453
256 : : 'u', 't', 'e',
257 : : #define s_7_27 456
258 : : 'e', 'r', 'a', 'i',
259 : : #define s_7_28 460
260 : : 'i', 'r', 'a', 'i',
261 : : #define s_7_29 464
262 : : 'i', 's', 'c', 'i',
263 : : #define s_7_30 468
264 : : 'e', 'n', 'd', 'i',
265 : : #define s_7_31 472
266 : : 'e', 'r', 'e', 'i',
267 : : #define s_7_32 476
268 : : 'i', 'r', 'e', 'i',
269 : : #define s_7_33 s_7_52
270 : : #define s_7_34 480
271 : : 'a', 't', 'i',
272 : : #define s_7_35 483
273 : : 'i', 't', 'i',
274 : : #define s_7_36 486
275 : : 'e', 'r', 'e', 's', 't', 'i',
276 : : #define s_7_37 492
277 : : 'i', 'r', 'e', 's', 't', 'i',
278 : : #define s_7_38 498
279 : : 'u', 't', 'i',
280 : : #define s_7_39 501
281 : : 'a', 'v', 'i',
282 : : #define s_7_40 504
283 : : 'e', 'v', 'i',
284 : : #define s_7_41 507
285 : : 'i', 'v', 'i',
286 : : #define s_7_42 s_7_66
287 : : #define s_7_43 510
288 : : 'a', 'n', 'd', 'o',
289 : : #define s_7_44 514
290 : : 'e', 'n', 'd', 'o',
291 : : #define s_7_45 518
292 : : 'Y', 'a', 'm', 'o',
293 : : #define s_7_46 522
294 : : 'i', 'a', 'm', 'o',
295 : : #define s_7_47 526
296 : : 'a', 'v', 'a', 'm', 'o',
297 : : #define s_7_48 531
298 : : 'e', 'v', 'a', 'm', 'o',
299 : : #define s_7_49 536
300 : : 'i', 'v', 'a', 'm', 'o',
301 : : #define s_7_50 541
302 : : 'e', 'r', 'e', 'm', 'o',
303 : : #define s_7_51 546
304 : : 'i', 'r', 'e', 'm', 'o',
305 : : #define s_7_52 551
306 : : 'a', 's', 's', 'i', 'm', 'o',
307 : : #define s_7_53 557
308 : : 'a', 'm', 'm', 'o',
309 : : #define s_7_54 (s_7_55 + 2)
310 : : #define s_7_55 561
311 : : 'e', 'r', 'e', 'm', 'm', 'o',
312 : : #define s_7_56 567
313 : : 'i', 'r', 'e', 'm', 'm', 'o',
314 : : #define s_7_57 573
315 : : 'i', 'm', 'm', 'o',
316 : : #define s_7_58 (s_7_59 + 3)
317 : : #define s_7_59 577
318 : : 'i', 's', 'c', 'a', 'n', 'o',
319 : : #define s_7_60 583
320 : : 'a', 'v', 'a', 'n', 'o',
321 : : #define s_7_61 588
322 : : 'e', 'v', 'a', 'n', 'o',
323 : : #define s_7_62 593
324 : : 'i', 'v', 'a', 'n', 'o',
325 : : #define s_7_63 598
326 : : 'e', 'r', 'a', 'n', 'n', 'o',
327 : : #define s_7_64 604
328 : : 'i', 'r', 'a', 'n', 'n', 'o',
329 : : #define s_7_65 (s_7_66 + 3)
330 : : #define s_7_66 610
331 : : 'i', 's', 'c', 'o', 'n', 'o',
332 : : #define s_7_67 616
333 : : 'a', 'r', 'o', 'n', 'o',
334 : : #define s_7_68 621
335 : : 'e', 'r', 'o', 'n', 'o',
336 : : #define s_7_69 626
337 : : 'i', 'r', 'o', 'n', 'o',
338 : : #define s_7_70 631
339 : : 'e', 'r', 'e', 'b', 'b', 'e', 'r', 'o',
340 : : #define s_7_71 639
341 : : 'i', 'r', 'e', 'b', 'b', 'e', 'r', 'o',
342 : : #define s_7_72 647
343 : : 'a', 's', 's', 'e', 'r', 'o',
344 : : #define s_7_73 653
345 : : 'e', 's', 's', 'e', 'r', 'o',
346 : : #define s_7_74 659
347 : : 'i', 's', 's', 'e', 'r', 'o',
348 : : #define s_7_75 665
349 : : 'a', 't', 'o',
350 : : #define s_7_76 668
351 : : 'i', 't', 'o',
352 : : #define s_7_77 671
353 : : 'u', 't', 'o',
354 : : #define s_7_78 674
355 : : 'a', 'v', 'o',
356 : : #define s_7_79 677
357 : : 'e', 'v', 'o',
358 : : #define s_7_80 680
359 : : 'i', 'v', 'o',
360 : : #define s_7_81 s_7_12
361 : : #define s_7_82 s_7_9
362 : : #define s_7_83 683
363 : : 'e', 'r', 0xC3, 0xA0,
364 : : #define s_7_84 687
365 : : 'i', 'r', 0xC3, 0xA0,
366 : : #define s_7_85 691
367 : : 'e', 'r', 0xC3, 0xB2,
368 : : #define s_7_86 695
369 : : 'i', 'r', 0xC3, 0xB2,
370 : : };
371 : :
372 : :
373 : : static const struct among a_0[7] =
374 : : {
375 : : /* 0 */ { 0, 0, -1, 7},
376 : : /* 1 */ { 2, s_0_1, 0, 6},
377 : : /* 2 */ { 2, s_0_2, 0, 1},
378 : : /* 3 */ { 2, s_0_3, 0, 2},
379 : : /* 4 */ { 2, s_0_4, 0, 3},
380 : : /* 5 */ { 2, s_0_5, 0, 4},
381 : : /* 6 */ { 2, s_0_6, 0, 5}
382 : : };
383 : :
384 : :
385 : : static const struct among a_1[3] =
386 : : {
387 : : /* 0 */ { 0, 0, -1, 3},
388 : : /* 1 */ { 1, s_1_1, 0, 1},
389 : : /* 2 */ { 1, s_1_2, 0, 2}
390 : : };
391 : :
392 : :
393 : : static const struct among a_2[37] =
394 : : {
395 : : /* 0 */ { 2, s_2_0, -1, -1},
396 : : /* 1 */ { 4, s_2_1, 0, -1},
397 : : /* 2 */ { 6, s_2_2, 0, -1},
398 : : /* 3 */ { 4, s_2_3, 0, -1},
399 : : /* 4 */ { 4, s_2_4, 0, -1},
400 : : /* 5 */ { 4, s_2_5, 0, -1},
401 : : /* 6 */ { 2, s_2_6, -1, -1},
402 : : /* 7 */ { 4, s_2_7, 6, -1},
403 : : /* 8 */ { 6, s_2_8, 6, -1},
404 : : /* 9 */ { 4, s_2_9, 6, -1},
405 : : /* 10 */ { 4, s_2_10, 6, -1},
406 : : /* 11 */ { 4, s_2_11, 6, -1},
407 : : /* 12 */ { 2, s_2_12, -1, -1},
408 : : /* 13 */ { 4, s_2_13, 12, -1},
409 : : /* 14 */ { 6, s_2_14, 12, -1},
410 : : /* 15 */ { 4, s_2_15, 12, -1},
411 : : /* 16 */ { 4, s_2_16, 12, -1},
412 : : /* 17 */ { 4, s_2_17, 12, -1},
413 : : /* 18 */ { 4, s_2_18, 12, -1},
414 : : /* 19 */ { 2, s_2_19, -1, -1},
415 : : /* 20 */ { 2, s_2_20, -1, -1},
416 : : /* 21 */ { 4, s_2_21, 20, -1},
417 : : /* 22 */ { 6, s_2_22, 20, -1},
418 : : /* 23 */ { 4, s_2_23, 20, -1},
419 : : /* 24 */ { 4, s_2_24, 20, -1},
420 : : /* 25 */ { 4, s_2_25, 20, -1},
421 : : /* 26 */ { 3, s_2_26, 20, -1},
422 : : /* 27 */ { 2, s_2_27, -1, -1},
423 : : /* 28 */ { 2, s_2_28, -1, -1},
424 : : /* 29 */ { 2, s_2_29, -1, -1},
425 : : /* 30 */ { 2, s_2_30, -1, -1},
426 : : /* 31 */ { 2, s_2_31, -1, -1},
427 : : /* 32 */ { 4, s_2_32, 31, -1},
428 : : /* 33 */ { 6, s_2_33, 31, -1},
429 : : /* 34 */ { 4, s_2_34, 31, -1},
430 : : /* 35 */ { 4, s_2_35, 31, -1},
431 : : /* 36 */ { 4, s_2_36, 31, -1}
432 : : };
433 : :
434 : :
435 : : static const struct among a_3[5] =
436 : : {
437 : : /* 0 */ { 4, s_3_0, -1, 1},
438 : : /* 1 */ { 4, s_3_1, -1, 1},
439 : : /* 2 */ { 2, s_3_2, -1, 2},
440 : : /* 3 */ { 2, s_3_3, -1, 2},
441 : : /* 4 */ { 2, s_3_4, -1, 2}
442 : : };
443 : :
444 : :
445 : : static const struct among a_4[4] =
446 : : {
447 : : /* 0 */ { 2, s_4_0, -1, -1},
448 : : /* 1 */ { 4, s_4_1, -1, -1},
449 : : /* 2 */ { 2, s_4_2, -1, -1},
450 : : /* 3 */ { 2, s_4_3, -1, 1}
451 : : };
452 : :
453 : :
454 : : static const struct among a_5[3] =
455 : : {
456 : : /* 0 */ { 2, s_5_0, -1, 1},
457 : : /* 1 */ { 4, s_5_1, -1, 1},
458 : : /* 2 */ { 2, s_5_2, -1, 1}
459 : : };
460 : :
461 : :
462 : : static const struct among a_6[51] =
463 : : {
464 : : /* 0 */ { 3, s_6_0, -1, 1},
465 : : /* 1 */ { 5, s_6_1, -1, 3},
466 : : /* 2 */ { 3, s_6_2, -1, 1},
467 : : /* 3 */ { 4, s_6_3, -1, 1},
468 : : /* 4 */ { 3, s_6_4, -1, 9},
469 : : /* 5 */ { 4, s_6_5, -1, 1},
470 : : /* 6 */ { 4, s_6_6, -1, 5},
471 : : /* 7 */ { 3, s_6_7, -1, 1},
472 : : /* 8 */ { 6, s_6_8, 7, 1},
473 : : /* 9 */ { 4, s_6_9, -1, 1},
474 : : /* 10 */ { 5, s_6_10, -1, 3},
475 : : /* 11 */ { 5, s_6_11, -1, 1},
476 : : /* 12 */ { 5, s_6_12, -1, 1},
477 : : /* 13 */ { 6, s_6_13, -1, 4},
478 : : /* 14 */ { 6, s_6_14, -1, 2},
479 : : /* 15 */ { 6, s_6_15, -1, 4},
480 : : /* 16 */ { 5, s_6_16, -1, 2},
481 : : /* 17 */ { 3, s_6_17, -1, 1},
482 : : /* 18 */ { 4, s_6_18, -1, 1},
483 : : /* 19 */ { 5, s_6_19, -1, 1},
484 : : /* 20 */ { 6, s_6_20, 19, 7},
485 : : /* 21 */ { 4, s_6_21, -1, 1},
486 : : /* 22 */ { 3, s_6_22, -1, 9},
487 : : /* 23 */ { 4, s_6_23, -1, 1},
488 : : /* 24 */ { 4, s_6_24, -1, 5},
489 : : /* 25 */ { 3, s_6_25, -1, 1},
490 : : /* 26 */ { 6, s_6_26, 25, 1},
491 : : /* 27 */ { 4, s_6_27, -1, 1},
492 : : /* 28 */ { 5, s_6_28, -1, 1},
493 : : /* 29 */ { 5, s_6_29, -1, 1},
494 : : /* 30 */ { 4, s_6_30, -1, 1},
495 : : /* 31 */ { 6, s_6_31, -1, 4},
496 : : /* 32 */ { 6, s_6_32, -1, 2},
497 : : /* 33 */ { 6, s_6_33, -1, 4},
498 : : /* 34 */ { 5, s_6_34, -1, 2},
499 : : /* 35 */ { 3, s_6_35, -1, 1},
500 : : /* 36 */ { 4, s_6_36, -1, 1},
501 : : /* 37 */ { 6, s_6_37, -1, 6},
502 : : /* 38 */ { 6, s_6_38, -1, 6},
503 : : /* 39 */ { 4, s_6_39, -1, 1},
504 : : /* 40 */ { 3, s_6_40, -1, 9},
505 : : /* 41 */ { 3, s_6_41, -1, 1},
506 : : /* 42 */ { 4, s_6_42, -1, 1},
507 : : /* 43 */ { 3, s_6_43, -1, 1},
508 : : /* 44 */ { 6, s_6_44, -1, 6},
509 : : /* 45 */ { 6, s_6_45, -1, 6},
510 : : /* 46 */ { 3, s_6_46, -1, 9},
511 : : /* 47 */ { 4, s_6_47, -1, 8},
512 : : /* 48 */ { 5, s_6_48, -1, 1},
513 : : /* 49 */ { 5, s_6_49, -1, 1},
514 : : /* 50 */ { 5, s_6_50, -1, 1}
515 : : };
516 : :
517 : :
518 : : static const struct among a_7[87] =
519 : : {
520 : : /* 0 */ { 4, s_7_0, -1, 1},
521 : : /* 1 */ { 4, s_7_1, -1, 1},
522 : : /* 2 */ { 3, s_7_2, -1, 1},
523 : : /* 3 */ { 3, s_7_3, -1, 1},
524 : : /* 4 */ { 3, s_7_4, -1, 1},
525 : : /* 5 */ { 3, s_7_5, -1, 1},
526 : : /* 6 */ { 3, s_7_6, -1, 1},
527 : : /* 7 */ { 3, s_7_7, -1, 1},
528 : : /* 8 */ { 6, s_7_8, -1, 1},
529 : : /* 9 */ { 6, s_7_9, -1, 1},
530 : : /* 10 */ { 4, s_7_10, -1, 1},
531 : : /* 11 */ { 4, s_7_11, -1, 1},
532 : : /* 12 */ { 3, s_7_12, -1, 1},
533 : : /* 13 */ { 3, s_7_13, -1, 1},
534 : : /* 14 */ { 3, s_7_14, -1, 1},
535 : : /* 15 */ { 4, s_7_15, -1, 1},
536 : : /* 16 */ { 3, s_7_16, -1, 1},
537 : : /* 17 */ { 5, s_7_17, 16, 1},
538 : : /* 18 */ { 5, s_7_18, 16, 1},
539 : : /* 19 */ { 5, s_7_19, 16, 1},
540 : : /* 20 */ { 3, s_7_20, -1, 1},
541 : : /* 21 */ { 5, s_7_21, 20, 1},
542 : : /* 22 */ { 5, s_7_22, 20, 1},
543 : : /* 23 */ { 3, s_7_23, -1, 1},
544 : : /* 24 */ { 6, s_7_24, -1, 1},
545 : : /* 25 */ { 6, s_7_25, -1, 1},
546 : : /* 26 */ { 3, s_7_26, -1, 1},
547 : : /* 27 */ { 4, s_7_27, -1, 1},
548 : : /* 28 */ { 4, s_7_28, -1, 1},
549 : : /* 29 */ { 4, s_7_29, -1, 1},
550 : : /* 30 */ { 4, s_7_30, -1, 1},
551 : : /* 31 */ { 4, s_7_31, -1, 1},
552 : : /* 32 */ { 4, s_7_32, -1, 1},
553 : : /* 33 */ { 4, s_7_33, -1, 1},
554 : : /* 34 */ { 3, s_7_34, -1, 1},
555 : : /* 35 */ { 3, s_7_35, -1, 1},
556 : : /* 36 */ { 6, s_7_36, -1, 1},
557 : : /* 37 */ { 6, s_7_37, -1, 1},
558 : : /* 38 */ { 3, s_7_38, -1, 1},
559 : : /* 39 */ { 3, s_7_39, -1, 1},
560 : : /* 40 */ { 3, s_7_40, -1, 1},
561 : : /* 41 */ { 3, s_7_41, -1, 1},
562 : : /* 42 */ { 4, s_7_42, -1, 1},
563 : : /* 43 */ { 4, s_7_43, -1, 1},
564 : : /* 44 */ { 4, s_7_44, -1, 1},
565 : : /* 45 */ { 4, s_7_45, -1, 1},
566 : : /* 46 */ { 4, s_7_46, -1, 1},
567 : : /* 47 */ { 5, s_7_47, -1, 1},
568 : : /* 48 */ { 5, s_7_48, -1, 1},
569 : : /* 49 */ { 5, s_7_49, -1, 1},
570 : : /* 50 */ { 5, s_7_50, -1, 1},
571 : : /* 51 */ { 5, s_7_51, -1, 1},
572 : : /* 52 */ { 6, s_7_52, -1, 1},
573 : : /* 53 */ { 4, s_7_53, -1, 1},
574 : : /* 54 */ { 4, s_7_54, -1, 1},
575 : : /* 55 */ { 6, s_7_55, 54, 1},
576 : : /* 56 */ { 6, s_7_56, 54, 1},
577 : : /* 57 */ { 4, s_7_57, -1, 1},
578 : : /* 58 */ { 3, s_7_58, -1, 1},
579 : : /* 59 */ { 6, s_7_59, 58, 1},
580 : : /* 60 */ { 5, s_7_60, 58, 1},
581 : : /* 61 */ { 5, s_7_61, 58, 1},
582 : : /* 62 */ { 5, s_7_62, 58, 1},
583 : : /* 63 */ { 6, s_7_63, -1, 1},
584 : : /* 64 */ { 6, s_7_64, -1, 1},
585 : : /* 65 */ { 3, s_7_65, -1, 1},
586 : : /* 66 */ { 6, s_7_66, 65, 1},
587 : : /* 67 */ { 5, s_7_67, 65, 1},
588 : : /* 68 */ { 5, s_7_68, 65, 1},
589 : : /* 69 */ { 5, s_7_69, 65, 1},
590 : : /* 70 */ { 8, s_7_70, -1, 1},
591 : : /* 71 */ { 8, s_7_71, -1, 1},
592 : : /* 72 */ { 6, s_7_72, -1, 1},
593 : : /* 73 */ { 6, s_7_73, -1, 1},
594 : : /* 74 */ { 6, s_7_74, -1, 1},
595 : : /* 75 */ { 3, s_7_75, -1, 1},
596 : : /* 76 */ { 3, s_7_76, -1, 1},
597 : : /* 77 */ { 3, s_7_77, -1, 1},
598 : : /* 78 */ { 3, s_7_78, -1, 1},
599 : : /* 79 */ { 3, s_7_79, -1, 1},
600 : : /* 80 */ { 3, s_7_80, -1, 1},
601 : : /* 81 */ { 2, s_7_81, -1, 1},
602 : : /* 82 */ { 2, s_7_82, -1, 1},
603 : : /* 83 */ { 4, s_7_83, -1, 1},
604 : : /* 84 */ { 4, s_7_84, -1, 1},
605 : : /* 85 */ { 4, s_7_85, -1, 1},
606 : : /* 86 */ { 4, s_7_86, -1, 1}
607 : : };
608 : :
609 : : static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 8, 2, 1 };
610 : :
611 : : static const unsigned char g_AEIO[] = { 17, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 8, 2 };
612 : :
613 : : static const unsigned char g_CG[] = { 17 };
614 : :
615 : : static const symbol s_0[] = { 0xC3, 0xA0 };
616 : : static const symbol s_1[] = { 0xC3, 0xA8 };
617 : : static const symbol s_2[] = { 0xC3, 0xAC };
618 : : static const symbol s_3[] = { 0xC3, 0xB2 };
619 : : static const symbol s_4[] = { 0xC3, 0xB9 };
620 : : static const symbol s_5[] = { 'q', 'U' };
621 : : static const symbol s_6[] = { 'U' };
622 : : static const symbol s_7[] = { 'I' };
623 : : static const symbol s_8[] = { 'i' };
624 : : static const symbol s_9[] = { 'u' };
625 : : static const symbol s_10[] = { 'e' };
626 : : static const symbol s_11[] = { 'i', 'c' };
627 : : static const symbol s_12[] = { 'l', 'o', 'g' };
628 : : static const symbol s_13[] = { 'u' };
629 : : static const symbol s_14[] = { 'e', 'n', 't', 'e' };
630 : : static const symbol s_15[] = { 'a', 't' };
631 : : static const symbol s_16[] = { 'a', 't' };
632 : : static const symbol s_17[] = { 'i', 'c' };
633 : :
634 : 106110 : int Xapian::InternalStemItalian::r_prelude() { /* forwardmode */
635 : : int among_var;
636 : 106110 : { int c_test1 = c; /* test, line 35 */
637 : 4237064 : while(1) { /* repeat, line 35 */
638 : 4343174 : int c2 = c;
639 : 4343174 : bra = c; /* [, line 36 */
640 : 4343174 : among_var = find_among(s_pool, a_0, 7, 0, 0); /* substring, line 36 */
641 [ - + ]: 4343174 : if (!(among_var)) goto lab0;
642 : 4343174 : ket = c; /* ], line 36 */
643 [ - + + + + : 4343174 : switch(among_var) { /* among, line 36 */
+ + + - ]
644 : 0 : case 0: goto lab0;
645 : : case 1:
646 : 27 : { int ret = slice_from_s(2, s_0); /* <-, line 37 */
647 [ - + ]: 27 : if (ret < 0) return ret;
648 : : }
649 : 27 : break;
650 : : case 2:
651 : 70 : { int ret = slice_from_s(2, s_1); /* <-, line 38 */
652 [ - + ]: 70 : if (ret < 0) return ret;
653 : : }
654 : 70 : break;
655 : : case 3:
656 : 43 : { int ret = slice_from_s(2, s_2); /* <-, line 39 */
657 [ - + ]: 43 : if (ret < 0) return ret;
658 : : }
659 : 43 : break;
660 : : case 4:
661 : 40 : { int ret = slice_from_s(2, s_3); /* <-, line 40 */
662 [ - + ]: 40 : if (ret < 0) return ret;
663 : : }
664 : 40 : break;
665 : : case 5:
666 : 31 : { int ret = slice_from_s(2, s_4); /* <-, line 41 */
667 [ - + ]: 31 : if (ret < 0) return ret;
668 : : }
669 : 31 : break;
670 : : case 6:
671 : 2485 : { int ret = slice_from_s(2, s_5); /* <-, line 42 */
672 [ - + ]: 2485 : if (ret < 0) return ret;
673 : : }
674 : 2485 : break;
675 : : case 7:
676 : 4340478 : { int ret = skip_utf8(p, c, 0, l, 1);
677 [ + + ]: 4340478 : if (ret < 0) goto lab0;
678 : 4234368 : c = ret; /* next, line 43 */
679 : : }
680 : : break;
681 : : }
682 : 4237064 : continue;
683 : : lab0:
684 : 106110 : c = c2;
685 : : break;
686 : : }
687 : 106110 : c = c_test1;
688 : : }
689 : 3047 : while(1) { /* repeat, line 46 */
690 : 109157 : int c3 = c;
691 : 4239496 : while(1) { /* goto, line 46 */
692 : 4348653 : int c4 = c;
693 [ + + ]: 4348653 : if (in_grouping_U(g_v, 97, 249, 0)) goto lab2; /* grouping v, line 47 */
694 : 492313 : bra = c; /* [, line 47 */
695 : 492313 : { int c5 = c; /* or, line 47 */
696 [ + + ][ + + ]: 492313 : if (c == l || p[c] != 'u') goto lab4;
697 : 10251 : c++;
698 : 10251 : ket = c; /* ], line 47 */
699 [ + + ]: 10251 : if (in_grouping_U(g_v, 97, 249, 0)) goto lab4; /* grouping v, line 47 */
700 : 1467 : { int ret = slice_from_s(1, s_6); /* <-, line 47 */
701 [ - + ]: 1467 : if (ret < 0) return ret;
702 : : }
703 : 1467 : goto lab3;
704 : : lab4:
705 : 490846 : c = c5;
706 [ + + ][ + + ]: 490846 : if (c == l || p[c] != 'i') goto lab2;
707 : 10315 : c++;
708 : 10315 : ket = c; /* ], line 48 */
709 [ + + ]: 10315 : if (in_grouping_U(g_v, 97, 249, 0)) goto lab2; /* grouping v, line 48 */
710 : 1580 : { int ret = slice_from_s(1, s_7); /* <-, line 48 */
711 [ - + ]: 1580 : if (ret < 0) return ret;
712 : : }
713 : : }
714 : : lab3:
715 : 3047 : c = c4;
716 : : break;
717 : : lab2:
718 : 4345606 : c = c4;
719 : 4345606 : { int ret = skip_utf8(p, c, 0, l, 1);
720 [ + + ]: 4345606 : if (ret < 0) goto lab1;
721 : 4239496 : c = ret; /* goto, line 46 */
722 : : }
723 : : }
724 : 3047 : continue;
725 : : lab1:
726 : 106110 : c = c3;
727 : : break;
728 : : }
729 : 106110 : return 1;
730 : : }
731 : :
732 : 106110 : int Xapian::InternalStemItalian::r_mark_regions() { /* forwardmode */
733 : 106110 : I_pV = l; /* pV = <integer expression>, line 54 */
734 : 106110 : I_p1 = l; /* p1 = <integer expression>, line 55 */
735 : 106110 : I_p2 = l; /* p2 = <integer expression>, line 56 */
736 : 106110 : { int c1 = c; /* do, line 58 */
737 : 106110 : { int c2 = c; /* or, line 60 */
738 [ + + ]: 106110 : if (in_grouping_U(g_v, 97, 249, 0)) goto lab2; /* grouping v, line 59 */
739 : 18367 : { int c3 = c; /* or, line 59 */
740 [ + + ]: 18367 : if (out_grouping_U(g_v, 97, 249, 0)) goto lab4; /* non v, line 59 */
741 : 16379 : { int ret = out_grouping_U(g_v, 97, 249, 1); /* gopast */ /* grouping v, line 59 */
742 [ + + ]: 16379 : if (ret < 0) goto lab4;
743 : 14836 : c += ret;
744 : : }
745 : 14836 : goto lab3;
746 : : lab4:
747 : 3531 : c = c3;
748 [ + + ]: 3531 : if (in_grouping_U(g_v, 97, 249, 0)) goto lab2; /* grouping v, line 59 */
749 : 1665 : { int ret = in_grouping_U(g_v, 97, 249, 1); /* gopast */ /* non v, line 59 */
750 [ + + ]: 1665 : if (ret < 0) goto lab2;
751 : 1605 : c += ret;
752 : : }
753 : : }
754 : : lab3:
755 : 16441 : goto lab1;
756 : : lab2:
757 : 89669 : c = c2;
758 [ + + ]: 89669 : if (out_grouping_U(g_v, 97, 249, 0)) goto lab0; /* non v, line 61 */
759 : 87743 : { int c4 = c; /* or, line 61 */
760 [ + + ]: 87743 : if (out_grouping_U(g_v, 97, 249, 0)) goto lab6; /* non v, line 61 */
761 : 56359 : { int ret = out_grouping_U(g_v, 97, 249, 1); /* gopast */ /* grouping v, line 61 */
762 [ + + ]: 56359 : if (ret < 0) goto lab6;
763 : 47307 : c += ret;
764 : : }
765 : 47307 : goto lab5;
766 : : lab6:
767 : 40436 : c = c4;
768 [ + + ]: 40436 : if (in_grouping_U(g_v, 97, 249, 0)) goto lab0; /* grouping v, line 61 */
769 : 29680 : { int ret = skip_utf8(p, c, 0, l, 1);
770 [ + + ]: 29680 : if (ret < 0) goto lab0;
771 : 29376 : c = ret; /* next, line 61 */
772 : : }
773 : : }
774 : : lab5:
775 : : ;
776 : : }
777 : : lab1:
778 : 93124 : I_pV = c; /* setmark pV, line 62 */
779 : : lab0:
780 : 106110 : c = c1;
781 : : }
782 : 106110 : { int c5 = c; /* do, line 64 */
783 : 106110 : { int ret = out_grouping_U(g_v, 97, 249, 1); /* gopast */ /* grouping v, line 65 */
784 [ + + ]: 106110 : if (ret < 0) goto lab7;
785 : 95354 : c += ret;
786 : : }
787 : 95354 : { int ret = in_grouping_U(g_v, 97, 249, 1); /* gopast */ /* non v, line 65 */
788 [ + + ]: 95354 : if (ret < 0) goto lab7;
789 : 93104 : c += ret;
790 : : }
791 : 93104 : I_p1 = c; /* setmark p1, line 65 */
792 : 93104 : { int ret = out_grouping_U(g_v, 97, 249, 1); /* gopast */ /* grouping v, line 66 */
793 [ + + ]: 93104 : if (ret < 0) goto lab7;
794 : 82290 : c += ret;
795 : : }
796 : 82290 : { int ret = in_grouping_U(g_v, 97, 249, 1); /* gopast */ /* non v, line 66 */
797 [ + + ]: 82290 : if (ret < 0) goto lab7;
798 : 76116 : c += ret;
799 : : }
800 : 76116 : I_p2 = c; /* setmark p2, line 66 */
801 : : lab7:
802 : 106110 : c = c5;
803 : : }
804 : 106110 : return 1;
805 : : }
806 : :
807 : 4265110 : int Xapian::InternalStemItalian::r_postlude() { /* forwardmode */
808 : : int among_var;
809 : 4159000 : while(1) { /* repeat, line 70 */
810 : 4265110 : int c1 = c;
811 : 4265110 : bra = c; /* [, line 72 */
812 [ + + ][ + + ]: 4265110 : if (c >= l || (p[c + 0] != 73 && p[c + 0] != 85)) among_var = 3; else /* substring, line 72 */
[ + + ]
813 : 21818 : among_var = find_among(s_pool, a_1, 3, 0, 0);
814 [ - + ]: 4265110 : if (!(among_var)) goto lab0;
815 : 4265110 : ket = c; /* ], line 72 */
816 [ - + + + : 4265110 : switch(among_var) { /* among, line 72 */
- ]
817 : 0 : case 0: goto lab0;
818 : : case 1:
819 : 9721 : { int ret = slice_from_s(1, s_8); /* <-, line 73 */
820 [ - + ]: 9721 : if (ret < 0) return ret;
821 : : }
822 : 9721 : break;
823 : : case 2:
824 : 12097 : { int ret = slice_from_s(1, s_9); /* <-, line 74 */
825 [ - + ]: 12097 : if (ret < 0) return ret;
826 : : }
827 : 12097 : break;
828 : : case 3:
829 : 4243292 : { int ret = skip_utf8(p, c, 0, l, 1);
830 [ + + ]: 4243292 : if (ret < 0) goto lab0;
831 : 4137182 : c = ret; /* next, line 75 */
832 : : }
833 : : break;
834 : : }
835 : 4159000 : continue;
836 : : lab0:
837 : 106110 : c = c1;
838 : : break;
839 : : }
840 : 106110 : return 1;
841 : : }
842 : :
843 : 32148 : int Xapian::InternalStemItalian::r_RV() { /* backwardmode */
844 [ + + ]: 32148 : if (!(I_pV <= c)) return 0; /* pV <= <integer expression>, line 82 */
845 : 32148 : return 1;
846 : : }
847 : :
848 : 269 : int Xapian::InternalStemItalian::r_R1() { /* backwardmode */
849 [ - + ]: 269 : if (!(I_p1 <= c)) return 0; /* p1 <= <integer expression>, line 83 */
850 : 269 : return 1;
851 : : }
852 : :
853 : 4178 : int Xapian::InternalStemItalian::r_R2() { /* backwardmode */
854 [ + + ]: 4178 : if (!(I_p2 <= c)) return 0; /* p2 <= <integer expression>, line 84 */
855 : 4178 : return 1;
856 : : }
857 : :
858 : 106110 : int Xapian::InternalStemItalian::r_attached_pronoun() { /* backwardmode */
859 : : int among_var;
860 : 106110 : ket = c; /* [, line 87 */
861 [ + + ][ + + ]: 106110 : if (c - 1 <= lb || p[c - 1] >> 5 != 3 || !((33314 >> (p[c - 1] & 0x1f)) & 1)) return 0; /* substring, line 87 */
[ + + ]
862 [ + + ]: 37912 : if (!(find_among_b(s_pool, a_2, 37, 0, 0))) return 0;
863 : 8387 : bra = c; /* ], line 87 */
864 [ + + ][ + + ]: 8387 : if (c - 1 <= lb || (p[c - 1] != 111 && p[c - 1] != 114)) return 0; /* among, line 97 */
[ + + ]
865 : 3355 : among_var = find_among_b(s_pool, a_3, 5, 0, 0);
866 [ + + ]: 3355 : if (!(among_var)) return 0;
867 : 1796 : { int ret = r_RV(); /* call RV, line 97 */
868 [ + + ]: 1796 : if (ret <= 0) return ret;
869 : : }
870 [ - + + - ]: 1621 : switch(among_var) { /* among, line 97 */
871 : 0 : case 0: return 0;
872 : : case 1:
873 [ - + ]: 300 : if (slice_del() == -1) return -1; /* delete, line 98 */
874 : 300 : break;
875 : : case 2:
876 : 1321 : { int ret = slice_from_s(1, s_10); /* <-, line 99 */
877 [ - + ]: 1321 : if (ret < 0) return ret;
878 : : }
879 : : break;
880 : : }
881 : 106110 : return 1;
882 : : }
883 : :
884 : 106110 : int Xapian::InternalStemItalian::r_standard_suffix() { /* backwardmode */
885 : : int among_var;
886 : 106110 : ket = c; /* [, line 104 */
887 : 106110 : among_var = find_among_b(s_pool, a_6, 51, 0, 0); /* substring, line 104 */
888 [ + + ]: 106110 : if (!(among_var)) return 0;
889 : 4512 : bra = c; /* ], line 104 */
890 [ - + + + + : 4512 : switch(among_var) { /* among, line 104 */
+ + + + +
- ]
891 : 0 : case 0: return 0;
892 : : case 1:
893 : 2253 : { int ret = r_R2(); /* call R2, line 111 */
894 [ + + ]: 2253 : if (ret <= 0) return ret;
895 : : }
896 [ - + ]: 1465 : if (slice_del() == -1) return -1; /* delete, line 111 */
897 : 1465 : break;
898 : : case 2:
899 : 686 : { int ret = r_R2(); /* call R2, line 113 */
900 [ + + ]: 686 : if (ret <= 0) return ret;
901 : : }
902 [ - + ]: 527 : if (slice_del() == -1) return -1; /* delete, line 113 */
903 : 527 : { int m1 = l - c; (void)m1; /* try, line 114 */
904 : 527 : ket = c; /* [, line 114 */
905 [ + + ]: 527 : if (!(eq_s_b(2, s_11))) { c = l - m1; goto lab0; } /* literal, line 114 */
906 : 39 : bra = c; /* ], line 114 */
907 : 39 : { int ret = r_R2(); /* call R2, line 114 */
908 [ + + ]: 39 : if (ret == 0) { c = l - m1; goto lab0; }
909 [ - + ]: 27 : if (ret < 0) return ret;
910 : : }
911 [ - + ]: 27 : if (slice_del() == -1) return -1; /* delete, line 114 */
912 : : lab0:
913 : : ;
914 : : }
915 : 527 : break;
916 : : case 3:
917 : 22 : { int ret = r_R2(); /* call R2, line 117 */
918 [ + + ]: 22 : if (ret <= 0) return ret;
919 : : }
920 : 3 : { int ret = slice_from_s(3, s_12); /* <-, line 117 */
921 [ - + ]: 3 : if (ret < 0) return ret;
922 : : }
923 : 3 : break;
924 : : case 4:
925 : 73 : { int ret = r_R2(); /* call R2, line 119 */
926 [ + + ]: 73 : if (ret <= 0) return ret;
927 : : }
928 : 37 : { int ret = slice_from_s(1, s_13); /* <-, line 119 */
929 [ - + ]: 37 : if (ret < 0) return ret;
930 : : }
931 : 37 : break;
932 : : case 5:
933 : 189 : { int ret = r_R2(); /* call R2, line 121 */
934 [ + + ]: 189 : if (ret <= 0) return ret;
935 : : }
936 : 136 : { int ret = slice_from_s(4, s_14); /* <-, line 121 */
937 [ - + ]: 136 : if (ret < 0) return ret;
938 : : }
939 : 136 : break;
940 : : case 6:
941 : 347 : { int ret = r_RV(); /* call RV, line 123 */
942 [ + + ]: 347 : if (ret <= 0) return ret;
943 : : }
944 [ - + ]: 334 : if (slice_del() == -1) return -1; /* delete, line 123 */
945 : 334 : break;
946 : : case 7:
947 : 269 : { int ret = r_R1(); /* call R1, line 125 */
948 [ - + ]: 269 : if (ret <= 0) return ret;
949 : : }
950 [ - + ]: 269 : if (slice_del() == -1) return -1; /* delete, line 125 */
951 : 269 : { int m2 = l - c; (void)m2; /* try, line 126 */
952 : 269 : ket = c; /* [, line 127 */
953 [ + - ][ + - ]: 269 : if (c - 1 <= lb || p[c - 1] >> 5 != 3 || !((4722696 >> (p[c - 1] & 0x1f)) & 1)) { c = l - m2; goto lab1; } /* substring, line 127 */
[ + + ]
954 : 99 : among_var = find_among_b(s_pool, a_4, 4, 0, 0);
955 [ + + ]: 99 : if (!(among_var)) { c = l - m2; goto lab1; }
956 : 79 : bra = c; /* ], line 127 */
957 : 79 : { int ret = r_R2(); /* call R2, line 127 */
958 [ + + ]: 79 : if (ret == 0) { c = l - m2; goto lab1; }
959 [ - + ]: 56 : if (ret < 0) return ret;
960 : : }
961 [ - + ]: 56 : if (slice_del() == -1) return -1; /* delete, line 127 */
962 [ - + + ]: 56 : switch(among_var) { /* among, line 127 */
963 : 0 : case 0: { c = l - m2; goto lab1; }
964 : : case 1:
965 : 17 : ket = c; /* [, line 128 */
966 [ + + ]: 17 : if (!(eq_s_b(2, s_15))) { c = l - m2; goto lab1; } /* literal, line 128 */
967 : 7 : bra = c; /* ], line 128 */
968 : 7 : { int ret = r_R2(); /* call R2, line 128 */
969 [ + + ]: 7 : if (ret == 0) { c = l - m2; goto lab1; }
970 [ - + ]: 5 : if (ret < 0) return ret;
971 : : }
972 [ - + ]: 5 : if (slice_del() == -1) return -1; /* delete, line 128 */
973 : : break;
974 : : }
975 : : lab1:
976 : : ;
977 : : }
978 : 269 : break;
979 : : case 8:
980 : 241 : { int ret = r_R2(); /* call R2, line 134 */
981 [ + + ]: 241 : if (ret <= 0) return ret;
982 : : }
983 [ - + ]: 213 : if (slice_del() == -1) return -1; /* delete, line 134 */
984 : 213 : { int m3 = l - c; (void)m3; /* try, line 135 */
985 : 213 : ket = c; /* [, line 136 */
986 [ + - ][ + + ]: 213 : if (c - 1 <= lb || p[c - 1] >> 5 != 3 || !((4198408 >> (p[c - 1] & 0x1f)) & 1)) { c = l - m3; goto lab2; } /* substring, line 136 */
[ + + ]
987 : 113 : among_var = find_among_b(s_pool, a_5, 3, 0, 0);
988 [ + + ]: 113 : if (!(among_var)) { c = l - m3; goto lab2; }
989 : 34 : bra = c; /* ], line 136 */
990 [ - + - ]: 34 : switch(among_var) { /* among, line 136 */
991 : 0 : case 0: { c = l - m3; goto lab2; }
992 : : case 1:
993 : 34 : { int ret = r_R2(); /* call R2, line 137 */
994 [ + + ]: 34 : if (ret == 0) { c = l - m3; goto lab2; }
995 [ - + ]: 22 : if (ret < 0) return ret;
996 : : }
997 [ - + ]: 22 : if (slice_del() == -1) return -1; /* delete, line 137 */
998 : : break;
999 : : }
1000 : : lab2:
1001 : : ;
1002 : : }
1003 : 213 : break;
1004 : : case 9:
1005 : 432 : { int ret = r_R2(); /* call R2, line 142 */
1006 [ + + ]: 432 : if (ret <= 0) return ret;
1007 : : }
1008 [ - + ]: 324 : if (slice_del() == -1) return -1; /* delete, line 142 */
1009 : 324 : { int m4 = l - c; (void)m4; /* try, line 143 */
1010 : 324 : ket = c; /* [, line 143 */
1011 [ + + ]: 324 : if (!(eq_s_b(2, s_16))) { c = l - m4; goto lab3; } /* literal, line 143 */
1012 : 114 : bra = c; /* ], line 143 */
1013 : 114 : { int ret = r_R2(); /* call R2, line 143 */
1014 [ + + ]: 114 : if (ret == 0) { c = l - m4; goto lab3; }
1015 [ - + ]: 93 : if (ret < 0) return ret;
1016 : : }
1017 [ - + ]: 93 : if (slice_del() == -1) return -1; /* delete, line 143 */
1018 : 93 : ket = c; /* [, line 143 */
1019 [ + + ]: 93 : if (!(eq_s_b(2, s_17))) { c = l - m4; goto lab3; } /* literal, line 143 */
1020 : 9 : bra = c; /* ], line 143 */
1021 : 9 : { int ret = r_R2(); /* call R2, line 143 */
1022 [ + + ]: 9 : if (ret == 0) { c = l - m4; goto lab3; }
1023 [ - + ]: 4 : if (ret < 0) return ret;
1024 : : }
1025 [ - + ]: 4 : if (slice_del() == -1) return -1; /* delete, line 143 */
1026 : : lab3:
1027 : : ;
1028 : : }
1029 : : break;
1030 : : }
1031 : 106110 : return 1;
1032 : : }
1033 : :
1034 : 102802 : int Xapian::InternalStemItalian::r_verb_suffix() { /* backwardmode */
1035 : : int among_var;
1036 : 102802 : { int m1 = l - c; (void)m1; /* setlimit, line 148 */
1037 : : int mlimit1;
1038 [ - + ]: 102802 : if (c < I_pV) return 0;
1039 : 102802 : c = I_pV; /* tomark, line 148 */
1040 : 102802 : mlimit1 = lb; lb = c;
1041 : 102802 : c = l - m1;
1042 : 102802 : ket = c; /* [, line 149 */
1043 : 102802 : among_var = find_among_b(s_pool, a_7, 87, 0, 0); /* substring, line 149 */
1044 [ + + ]: 102802 : if (!(among_var)) { lb = mlimit1; return 0; }
1045 : 11097 : bra = c; /* ], line 149 */
1046 [ - + - ]: 11097 : switch(among_var) { /* among, line 149 */
1047 : 0 : case 0: { lb = mlimit1; return 0; }
1048 : : case 1:
1049 [ - + ]: 11097 : if (slice_del() == -1) return -1; /* delete, line 163 */
1050 : : break;
1051 : : }
1052 : 11097 : lb = mlimit1;
1053 : : }
1054 : 102802 : return 1;
1055 : : }
1056 : :
1057 : 106110 : int Xapian::InternalStemItalian::r_vowel_suffix() { /* backwardmode */
1058 : 106110 : { int m1 = l - c; (void)m1; /* try, line 171 */
1059 : 106110 : ket = c; /* [, line 172 */
1060 [ + + ]: 106110 : if (in_grouping_b_U(g_AEIO, 97, 242, 0)) { c = l - m1; goto lab0; } /* grouping AEIO, line 172 */
1061 : 27323 : bra = c; /* ], line 172 */
1062 : 27323 : { int ret = r_RV(); /* call RV, line 172 */
1063 [ + + ]: 27323 : if (ret == 0) { c = l - m1; goto lab0; }
1064 [ - + ]: 25098 : if (ret < 0) return ret;
1065 : : }
1066 [ - + ]: 25098 : if (slice_del() == -1) return -1; /* delete, line 172 */
1067 : 25098 : ket = c; /* [, line 173 */
1068 [ + - ][ + + ]: 25098 : if (c <= lb || p[c - 1] != 'i') { c = l - m1; goto lab0; }
1069 : 1953 : c--;
1070 : 1953 : bra = c; /* ], line 173 */
1071 : 1953 : { int ret = r_RV(); /* call RV, line 173 */
1072 [ + + ]: 1953 : if (ret == 0) { c = l - m1; goto lab0; }
1073 [ - + ]: 1858 : if (ret < 0) return ret;
1074 : : }
1075 [ - + ]: 1858 : if (slice_del() == -1) return -1; /* delete, line 173 */
1076 : : lab0:
1077 : : ;
1078 : : }
1079 : 106110 : { int m2 = l - c; (void)m2; /* try, line 175 */
1080 : 106110 : ket = c; /* [, line 176 */
1081 [ + - ][ + + ]: 106110 : if (c <= lb || p[c - 1] != 'h') { c = l - m2; goto lab1; }
1082 : 2946 : c--;
1083 : 2946 : bra = c; /* ], line 176 */
1084 [ + + ]: 2946 : if (in_grouping_b_U(g_CG, 99, 103, 0)) { c = l - m2; goto lab1; } /* grouping CG, line 176 */
1085 : 729 : { int ret = r_RV(); /* call RV, line 176 */
1086 [ + + ]: 729 : if (ret == 0) { c = l - m2; goto lab1; }
1087 [ - + ]: 677 : if (ret < 0) return ret;
1088 : : }
1089 [ - + ]: 677 : if (slice_del() == -1) return -1; /* delete, line 176 */
1090 : : lab1:
1091 : : ;
1092 : : }
1093 : 106110 : return 1;
1094 : : }
1095 : :
1096 : 106110 : int Xapian::InternalStemItalian::stem() { /* forwardmode */
1097 : 106110 : { int c1 = c; /* do, line 182 */
1098 : 106110 : { int ret = r_prelude(); /* call prelude, line 182 */
1099 [ - + ]: 106110 : if (ret == 0) goto lab0;
1100 [ - + ]: 106110 : if (ret < 0) return ret;
1101 : : }
1102 : : lab0:
1103 : 106110 : c = c1;
1104 : : }
1105 : 106110 : { int c2 = c; /* do, line 183 */
1106 : 106110 : { int ret = r_mark_regions(); /* call mark_regions, line 183 */
1107 [ - + ]: 106110 : if (ret == 0) goto lab1;
1108 [ - + ]: 106110 : if (ret < 0) return ret;
1109 : : }
1110 : : lab1:
1111 : 106110 : c = c2;
1112 : : }
1113 : 106110 : lb = c; c = l; /* backwards, line 184 */
1114 : :
1115 : 106110 : { int m3 = l - c; (void)m3; /* do, line 185 */
1116 : 106110 : { int ret = r_attached_pronoun(); /* call attached_pronoun, line 185 */
1117 [ + + ]: 106110 : if (ret == 0) goto lab2;
1118 [ - + ]: 1621 : if (ret < 0) return ret;
1119 : : }
1120 : : lab2:
1121 : 106110 : c = l - m3;
1122 : : }
1123 : 106110 : { int m4 = l - c; (void)m4; /* do, line 186 */
1124 : 106110 : { int m5 = l - c; (void)m5; /* or, line 186 */
1125 : 106110 : { int ret = r_standard_suffix(); /* call standard_suffix, line 186 */
1126 [ + + ]: 106110 : if (ret == 0) goto lab5;
1127 [ - + ]: 3308 : if (ret < 0) return ret;
1128 : : }
1129 : 3308 : goto lab4;
1130 : : lab5:
1131 : 102802 : c = l - m5;
1132 : 102802 : { int ret = r_verb_suffix(); /* call verb_suffix, line 186 */
1133 [ + + ]: 102802 : if (ret == 0) goto lab3;
1134 [ - + ]: 11097 : if (ret < 0) return ret;
1135 : : }
1136 : : }
1137 : : lab4:
1138 : : lab3:
1139 : 106110 : c = l - m4;
1140 : : }
1141 : 106110 : { int m6 = l - c; (void)m6; /* do, line 187 */
1142 : 106110 : { int ret = r_vowel_suffix(); /* call vowel_suffix, line 187 */
1143 [ - + ]: 106110 : if (ret == 0) goto lab6;
1144 [ - + ]: 106110 : if (ret < 0) return ret;
1145 : : }
1146 : : lab6:
1147 : 106110 : c = l - m6;
1148 : : }
1149 : 106110 : c = lb;
1150 : 106110 : { int c7 = c; /* do, line 189 */
1151 : 106110 : { int ret = r_postlude(); /* call postlude, line 189 */
1152 [ - + ]: 106110 : if (ret == 0) goto lab7;
1153 [ - + ]: 106110 : if (ret < 0) return ret;
1154 : : }
1155 : : lab7:
1156 : 106110 : c = c7;
1157 : : }
1158 : 106110 : return 1;
1159 : : }
1160 : :
1161 : 3 : Xapian::InternalStemItalian::InternalStemItalian()
1162 : 3 : : I_p2(0), I_p1(0), I_pV(0)
1163 : : {
1164 : 3 : }
1165 : :
1166 : 3 : Xapian::InternalStemItalian::~InternalStemItalian()
1167 : : {
1168 [ + - ][ # # ]: 3 : }
[ # # ]
1169 : :
1170 : : std::string
1171 : 1 : Xapian::InternalStemItalian::get_description() const
1172 : : {
1173 : 1 : return "italian";
1174 : : }
|