1 // This file was generated automatically by the Snowball to Java compiler
2
3 package org.tartarus.snowball.ext;
4
5 import org.tartarus.snowball.Among;
6
7 /***
8 * This class was automatically generated by a Snowball to Java compiler
9 * It implements the stemming algorithm defined by a snowball script.
10 */
11
12 public class romanianStemmer extends org.tartarus.snowball.SnowballStemmer {
13
14 private static final long serialVersionUID = 1L;
15
16 private final static romanianStemmer methodObject = new romanianStemmer ();
17
18 private final static Among a_0[] = {
19 new Among ( "", -1, 3, "", methodObject ),
20 new Among ( "I", 0, 1, "", methodObject ),
21 new Among ( "U", 0, 2, "", methodObject )
22 };
23
24 private final static Among a_1[] = {
25 new Among ( "ea", -1, 3, "", methodObject ),
26 new Among ( "a\u0163ia", -1, 7, "", methodObject ),
27 new Among ( "aua", -1, 2, "", methodObject ),
28 new Among ( "iua", -1, 4, "", methodObject ),
29 new Among ( "a\u0163ie", -1, 7, "", methodObject ),
30 new Among ( "ele", -1, 3, "", methodObject ),
31 new Among ( "ile", -1, 5, "", methodObject ),
32 new Among ( "iile", 6, 4, "", methodObject ),
33 new Among ( "iei", -1, 4, "", methodObject ),
34 new Among ( "atei", -1, 6, "", methodObject ),
35 new Among ( "ii", -1, 4, "", methodObject ),
36 new Among ( "ului", -1, 1, "", methodObject ),
37 new Among ( "ul", -1, 1, "", methodObject ),
38 new Among ( "elor", -1, 3, "", methodObject ),
39 new Among ( "ilor", -1, 4, "", methodObject ),
40 new Among ( "iilor", 14, 4, "", methodObject )
41 };
42
43 private final static Among a_2[] = {
44 new Among ( "icala", -1, 4, "", methodObject ),
45 new Among ( "iciva", -1, 4, "", methodObject ),
46 new Among ( "ativa", -1, 5, "", methodObject ),
47 new Among ( "itiva", -1, 6, "", methodObject ),
48 new Among ( "icale", -1, 4, "", methodObject ),
49 new Among ( "a\u0163iune", -1, 5, "", methodObject ),
50 new Among ( "i\u0163iune", -1, 6, "", methodObject ),
51 new Among ( "atoare", -1, 5, "", methodObject ),
52 new Among ( "itoare", -1, 6, "", methodObject ),
53 new Among ( "\u0103toare", -1, 5, "", methodObject ),
54 new Among ( "icitate", -1, 4, "", methodObject ),
55 new Among ( "abilitate", -1, 1, "", methodObject ),
56 new Among ( "ibilitate", -1, 2, "", methodObject ),
57 new Among ( "ivitate", -1, 3, "", methodObject ),
58 new Among ( "icive", -1, 4, "", methodObject ),
59 new Among ( "ative", -1, 5, "", methodObject ),
60 new Among ( "itive", -1, 6, "", methodObject ),
61 new Among ( "icali", -1, 4, "", methodObject ),
62 new Among ( "atori", -1, 5, "", methodObject ),
63 new Among ( "icatori", 18, 4, "", methodObject ),
64 new Among ( "itori", -1, 6, "", methodObject ),
65 new Among ( "\u0103tori", -1, 5, "", methodObject ),
66 new Among ( "icitati", -1, 4, "", methodObject ),
67 new Among ( "abilitati", -1, 1, "", methodObject ),
68 new Among ( "ivitati", -1, 3, "", methodObject ),
69 new Among ( "icivi", -1, 4, "", methodObject ),
70 new Among ( "ativi", -1, 5, "", methodObject ),
71 new Among ( "itivi", -1, 6, "", methodObject ),
72 new Among ( "icit\u0103i", -1, 4, "", methodObject ),
73 new Among ( "abilit\u0103i", -1, 1, "", methodObject ),
74 new Among ( "ivit\u0103i", -1, 3, "", methodObject ),
75 new Among ( "icit\u0103\u0163i", -1, 4, "", methodObject ),
76 new Among ( "abilit\u0103\u0163i", -1, 1, "", methodObject ),
77 new Among ( "ivit\u0103\u0163i", -1, 3, "", methodObject ),
78 new Among ( "ical", -1, 4, "", methodObject ),
79 new Among ( "ator", -1, 5, "", methodObject ),
80 new Among ( "icator", 35, 4, "", methodObject ),
81 new Among ( "itor", -1, 6, "", methodObject ),
82 new Among ( "\u0103tor", -1, 5, "", methodObject ),
83 new Among ( "iciv", -1, 4, "", methodObject ),
84 new Among ( "ativ", -1, 5, "", methodObject ),
85 new Among ( "itiv", -1, 6, "", methodObject ),
86 new Among ( "ical\u0103", -1, 4, "", methodObject ),
87 new Among ( "iciv\u0103", -1, 4, "", methodObject ),
88 new Among ( "ativ\u0103", -1, 5, "", methodObject ),
89 new Among ( "itiv\u0103", -1, 6, "", methodObject )
90 };
91
92 private final static Among a_3[] = {
93 new Among ( "ica", -1, 1, "", methodObject ),
94 new Among ( "abila", -1, 1, "", methodObject ),
95 new Among ( "ibila", -1, 1, "", methodObject ),
96 new Among ( "oasa", -1, 1, "", methodObject ),
97 new Among ( "ata", -1, 1, "", methodObject ),
98 new Among ( "ita", -1, 1, "", methodObject ),
99 new Among ( "anta", -1, 1, "", methodObject ),
100 new Among ( "ista", -1, 3, "", methodObject ),
101 new Among ( "uta", -1, 1, "", methodObject ),
102 new Among ( "iva", -1, 1, "", methodObject ),
103 new Among ( "ic", -1, 1, "", methodObject ),
104 new Among ( "ice", -1, 1, "", methodObject ),
105 new Among ( "abile", -1, 1, "", methodObject ),
106 new Among ( "ibile", -1, 1, "", methodObject ),
107 new Among ( "isme", -1, 3, "", methodObject ),
108 new Among ( "iune", -1, 2, "", methodObject ),
109 new Among ( "oase", -1, 1, "", methodObject ),
110 new Among ( "ate", -1, 1, "", methodObject ),
111 new Among ( "itate", 17, 1, "", methodObject ),
112 new Among ( "ite", -1, 1, "", methodObject ),
113 new Among ( "ante", -1, 1, "", methodObject ),
114 new Among ( "iste", -1, 3, "", methodObject ),
115 new Among ( "ute", -1, 1, "", methodObject ),
116 new Among ( "ive", -1, 1, "", methodObject ),
117 new Among ( "ici", -1, 1, "", methodObject ),
118 new Among ( "abili", -1, 1, "", methodObject ),
119 new Among ( "ibili", -1, 1, "", methodObject ),
120 new Among ( "iuni", -1, 2, "", methodObject ),
121 new Among ( "atori", -1, 1, "", methodObject ),
122 new Among ( "osi", -1, 1, "", methodObject ),
123 new Among ( "ati", -1, 1, "", methodObject ),
124 new Among ( "itati", 30, 1, "", methodObject ),
125 new Among ( "iti", -1, 1, "", methodObject ),
126 new Among ( "anti", -1, 1, "", methodObject ),
127 new Among ( "isti", -1, 3, "", methodObject ),
128 new Among ( "uti", -1, 1, "", methodObject ),
129 new Among ( "i\u015Fti", -1, 3, "", methodObject ),
130 new Among ( "ivi", -1, 1, "", methodObject ),
131 new Among ( "it\u0103i", -1, 1, "", methodObject ),
132 new Among ( "o\u015Fi", -1, 1, "", methodObject ),
133 new Among ( "it\u0103\u0163i", -1, 1, "", methodObject ),
134 new Among ( "abil", -1, 1, "", methodObject ),
135 new Among ( "ibil", -1, 1, "", methodObject ),
136 new Among ( "ism", -1, 3, "", methodObject ),
137 new Among ( "ator", -1, 1, "", methodObject ),
138 new Among ( "os", -1, 1, "", methodObject ),
139 new Among ( "at", -1, 1, "", methodObject ),
140 new Among ( "it", -1, 1, "", methodObject ),
141 new Among ( "ant", -1, 1, "", methodObject ),
142 new Among ( "ist", -1, 3, "", methodObject ),
143 new Among ( "ut", -1, 1, "", methodObject ),
144 new Among ( "iv", -1, 1, "", methodObject ),
145 new Among ( "ic\u0103", -1, 1, "", methodObject ),
146 new Among ( "abil\u0103", -1, 1, "", methodObject ),
147 new Among ( "ibil\u0103", -1, 1, "", methodObject ),
148 new Among ( "oas\u0103", -1, 1, "", methodObject ),
149 new Among ( "at\u0103", -1, 1, "", methodObject ),
150 new Among ( "it\u0103", -1, 1, "", methodObject ),
151 new Among ( "ant\u0103", -1, 1, "", methodObject ),
152 new Among ( "ist\u0103", -1, 3, "", methodObject ),
153 new Among ( "ut\u0103", -1, 1, "", methodObject ),
154 new Among ( "iv\u0103", -1, 1, "", methodObject )
155 };
156
157 private final static Among a_4[] = {
158 new Among ( "ea", -1, 1, "", methodObject ),
159 new Among ( "ia", -1, 1, "", methodObject ),
160 new Among ( "esc", -1, 1, "", methodObject ),
161 new Among ( "\u0103sc", -1, 1, "", methodObject ),
162 new Among ( "ind", -1, 1, "", methodObject ),
163 new Among ( "\u00E2nd", -1, 1, "", methodObject ),
164 new Among ( "are", -1, 1, "", methodObject ),
165 new Among ( "ere", -1, 1, "", methodObject ),
166 new Among ( "ire", -1, 1, "", methodObject ),
167 new Among ( "\u00E2re", -1, 1, "", methodObject ),
168 new Among ( "se", -1, 2, "", methodObject ),
169 new Among ( "ase", 10, 1, "", methodObject ),
170 new Among ( "sese", 10, 2, "", methodObject ),
171 new Among ( "ise", 10, 1, "", methodObject ),
172 new Among ( "use", 10, 1, "", methodObject ),
173 new Among ( "\u00E2se", 10, 1, "", methodObject ),
174 new Among ( "e\u015Fte", -1, 1, "", methodObject ),
175 new Among ( "\u0103\u015Fte", -1, 1, "", methodObject ),
176 new Among ( "eze", -1, 1, "", methodObject ),
177 new Among ( "ai", -1, 1, "", methodObject ),
178 new Among ( "eai", 19, 1, "", methodObject ),
179 new Among ( "iai", 19, 1, "", methodObject ),
180 new Among ( "sei", -1, 2, "", methodObject ),
181 new Among ( "e\u015Fti", -1, 1, "", methodObject ),
182 new Among ( "\u0103\u015Fti", -1, 1, "", methodObject ),
183 new Among ( "ui", -1, 1, "", methodObject ),
184 new Among ( "ezi", -1, 1, "", methodObject ),
185 new Among ( "\u00E2i", -1, 1, "", methodObject ),
186 new Among ( "a\u015Fi", -1, 1, "", methodObject ),
187 new Among ( "se\u015Fi", -1, 2, "", methodObject ),
188 new Among ( "ase\u015Fi", 29, 1, "", methodObject ),
189 new Among ( "sese\u015Fi", 29, 2, "", methodObject ),
190 new Among ( "ise\u015Fi", 29, 1, "", methodObject ),
191 new Among ( "use\u015Fi", 29, 1, "", methodObject ),
192 new Among ( "\u00E2se\u015Fi", 29, 1, "", methodObject ),
193 new Among ( "i\u015Fi", -1, 1, "", methodObject ),
194 new Among ( "u\u015Fi", -1, 1, "", methodObject ),
195 new Among ( "\u00E2\u015Fi", -1, 1, "", methodObject ),
196 new Among ( "a\u0163i", -1, 2, "", methodObject ),
197 new Among ( "ea\u0163i", 38, 1, "", methodObject ),
198 new Among ( "ia\u0163i", 38, 1, "", methodObject ),
199 new Among ( "e\u0163i", -1, 2, "", methodObject ),
200 new Among ( "i\u0163i", -1, 2, "", methodObject ),
201 new Among ( "\u00E2\u0163i", -1, 2, "", methodObject ),
202 new Among ( "ar\u0103\u0163i", -1, 1, "", methodObject ),
203 new Among ( "ser\u0103\u0163i", -1, 2, "", methodObject ),
204 new Among ( "aser\u0103\u0163i", 45, 1, "", methodObject ),
205 new Among ( "seser\u0103\u0163i", 45, 2, "", methodObject ),
206 new Among ( "iser\u0103\u0163i", 45, 1, "", methodObject ),
207 new Among ( "user\u0103\u0163i", 45, 1, "", methodObject ),
208 new Among ( "\u00E2ser\u0103\u0163i", 45, 1, "", methodObject ),
209 new Among ( "ir\u0103\u0163i", -1, 1, "", methodObject ),
210 new Among ( "ur\u0103\u0163i", -1, 1, "", methodObject ),
211 new Among ( "\u00E2r\u0103\u0163i", -1, 1, "", methodObject ),
212 new Among ( "am", -1, 1, "", methodObject ),
213 new Among ( "eam", 54, 1, "", methodObject ),
214 new Among ( "iam", 54, 1, "", methodObject ),
215 new Among ( "em", -1, 2, "", methodObject ),
216 new Among ( "asem", 57, 1, "", methodObject ),
217 new Among ( "sesem", 57, 2, "", methodObject ),
218 new Among ( "isem", 57, 1, "", methodObject ),
219 new Among ( "usem", 57, 1, "", methodObject ),
220 new Among ( "\u00E2sem", 57, 1, "", methodObject ),
221 new Among ( "im", -1, 2, "", methodObject ),
222 new Among ( "\u00E2m", -1, 2, "", methodObject ),
223 new Among ( "\u0103m", -1, 2, "", methodObject ),
224 new Among ( "ar\u0103m", 65, 1, "", methodObject ),
225 new Among ( "ser\u0103m", 65, 2, "", methodObject ),
226 new Among ( "aser\u0103m", 67, 1, "", methodObject ),
227 new Among ( "seser\u0103m", 67, 2, "", methodObject ),
228 new Among ( "iser\u0103m", 67, 1, "", methodObject ),
229 new Among ( "user\u0103m", 67, 1, "", methodObject ),
230 new Among ( "\u00E2ser\u0103m", 67, 1, "", methodObject ),
231 new Among ( "ir\u0103m", 65, 1, "", methodObject ),
232 new Among ( "ur\u0103m", 65, 1, "", methodObject ),
233 new Among ( "\u00E2r\u0103m", 65, 1, "", methodObject ),
234 new Among ( "au", -1, 1, "", methodObject ),
235 new Among ( "eau", 76, 1, "", methodObject ),
236 new Among ( "iau", 76, 1, "", methodObject ),
237 new Among ( "indu", -1, 1, "", methodObject ),
238 new Among ( "\u00E2ndu", -1, 1, "", methodObject ),
239 new Among ( "ez", -1, 1, "", methodObject ),
240 new Among ( "easc\u0103", -1, 1, "", methodObject ),
241 new Among ( "ar\u0103", -1, 1, "", methodObject ),
242 new Among ( "ser\u0103", -1, 2, "", methodObject ),
243 new Among ( "aser\u0103", 84, 1, "", methodObject ),
244 new Among ( "seser\u0103", 84, 2, "", methodObject ),
245 new Among ( "iser\u0103", 84, 1, "", methodObject ),
246 new Among ( "user\u0103", 84, 1, "", methodObject ),
247 new Among ( "\u00E2ser\u0103", 84, 1, "", methodObject ),
248 new Among ( "ir\u0103", -1, 1, "", methodObject ),
249 new Among ( "ur\u0103", -1, 1, "", methodObject ),
250 new Among ( "\u00E2r\u0103", -1, 1, "", methodObject ),
251 new Among ( "eaz\u0103", -1, 1, "", methodObject )
252 };
253
254 private final static Among a_5[] = {
255 new Among ( "a", -1, 1, "", methodObject ),
256 new Among ( "e", -1, 1, "", methodObject ),
257 new Among ( "ie", 1, 1, "", methodObject ),
258 new Among ( "i", -1, 1, "", methodObject ),
259 new Among ( "\u0103", -1, 1, "", methodObject )
260 };
261
262 private static final char g_v[] = {17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 32, 0, 0, 4 };
263
264 private boolean B_standard_suffix_removed;
265 private int I_p2;
266 private int I_p1;
267 private int I_pV;
268
269 private void copy_from(romanianStemmer other) {
270 B_standard_suffix_removed = other.B_standard_suffix_removed;
271 I_p2 = other.I_p2;
272 I_p1 = other.I_p1;
273 I_pV = other.I_pV;
274 super.copy_from(other);
275 }
276
277 private boolean r_prelude() {
278 int v_1;
279 int v_2;
280 int v_3;
281 // (, line 31
282 // repeat, line 32
283 replab0: while(true)
284 {
285 v_1 = cursor;
286 lab1: do {
287 // goto, line 32
288 golab2: while(true)
289 {
290 v_2 = cursor;
291 lab3: do {
292 // (, line 32
293 if (!(in_grouping(g_v, 97, 259)))
294 {
295 break lab3;
296 }
297 // [, line 33
298 bra = cursor;
299 // or, line 33
300 lab4: do {
301 v_3 = cursor;
302 lab5: do {
303 // (, line 33
304 // literal, line 33
305 if (!(eq_s(1, "u")))
306 {
307 break lab5;
308 }
309 // ], line 33
310 ket = cursor;
311 if (!(in_grouping(g_v, 97, 259)))
312 {
313 break lab5;
314 }
315 // <-, line 33
316 slice_from("U");
317 break lab4;
318 } while (false);
319 cursor = v_3;
320 // (, line 34
321 // literal, line 34
322 if (!(eq_s(1, "i")))
323 {
324 break lab3;
325 }
326 // ], line 34
327 ket = cursor;
328 if (!(in_grouping(g_v, 97, 259)))
329 {
330 break lab3;
331 }
332 // <-, line 34
333 slice_from("I");
334 } while (false);
335 cursor = v_2;
336 break golab2;
337 } while (false);
338 cursor = v_2;
339 if (cursor >= limit)
340 {
341 break lab1;
342 }
343 cursor++;
344 }
345 continue replab0;
346 } while (false);
347 cursor = v_1;
348 break replab0;
349 }
350 return true;
351 }
352
353 private boolean r_mark_regions() {
354 int v_1;
355 int v_2;
356 int v_3;
357 int v_6;
358 int v_8;
359 // (, line 38
360 I_pV = limit;
361 I_p1 = limit;
362 I_p2 = limit;
363 // do, line 44
364 v_1 = cursor;
365 lab0: do {
366 // (, line 44
367 // or, line 46
368 lab1: do {
369 v_2 = cursor;
370 lab2: do {
371 // (, line 45
372 if (!(in_grouping(g_v, 97, 259)))
373 {
374 break lab2;
375 }
376 // or, line 45
377 lab3: do {
378 v_3 = cursor;
379 lab4: do {
380 // (, line 45
381 if (!(out_grouping(g_v, 97, 259)))
382 {
383 break lab4;
384 }
385 // gopast, line 45
386 golab5: while(true)
387 {
388 lab6: do {
389 if (!(in_grouping(g_v, 97, 259)))
390 {
391 break lab6;
392 }
393 break golab5;
394 } while (false);
395 if (cursor >= limit)
396 {
397 break lab4;
398 }
399 cursor++;
400 }
401 break lab3;
402 } while (false);
403 cursor = v_3;
404 // (, line 45
405 if (!(in_grouping(g_v, 97, 259)))
406 {
407 break lab2;
408 }
409 // gopast, line 45
410 golab7: while(true)
411 {
412 lab8: do {
413 if (!(out_grouping(g_v, 97, 259)))
414 {
415 break lab8;
416 }
417 break golab7;
418 } while (false);
419 if (cursor >= limit)
420 {
421 break lab2;
422 }
423 cursor++;
424 }
425 } while (false);
426 break lab1;
427 } while (false);
428 cursor = v_2;
429 // (, line 47
430 if (!(out_grouping(g_v, 97, 259)))
431 {
432 break lab0;
433 }
434 // or, line 47
435 lab9: do {
436 v_6 = cursor;
437 lab10: do {
438 // (, line 47
439 if (!(out_grouping(g_v, 97, 259)))
440 {
441 break lab10;
442 }
443 // gopast, line 47
444 golab11: while(true)
445 {
446 lab12: do {
447 if (!(in_grouping(g_v, 97, 259)))
448 {
449 break lab12;
450 }
451 break golab11;
452 } while (false);
453 if (cursor >= limit)
454 {
455 break lab10;
456 }
457 cursor++;
458 }
459 break lab9;
460 } while (false);
461 cursor = v_6;
462 // (, line 47
463 if (!(in_grouping(g_v, 97, 259)))
464 {
465 break lab0;
466 }
467 // next, line 47
468 if (cursor >= limit)
469 {
470 break lab0;
471 }
472 cursor++;
473 } while (false);
474 } while (false);
475 // setmark pV, line 48
476 I_pV = cursor;
477 } while (false);
478 cursor = v_1;
479 // do, line 50
480 v_8 = cursor;
481 lab13: do {
482 // (, line 50
483 // gopast, line 51
484 golab14: while(true)
485 {
486 lab15: do {
487 if (!(in_grouping(g_v, 97, 259)))
488 {
489 break lab15;
490 }
491 break golab14;
492 } while (false);
493 if (cursor >= limit)
494 {
495 break lab13;
496 }
497 cursor++;
498 }
499 // gopast, line 51
500 golab16: while(true)
501 {
502 lab17: do {
503 if (!(out_grouping(g_v, 97, 259)))
504 {
505 break lab17;
506 }
507 break golab16;
508 } while (false);
509 if (cursor >= limit)
510 {
511 break lab13;
512 }
513 cursor++;
514 }
515 // setmark p1, line 51
516 I_p1 = cursor;
517 // gopast, line 52
518 golab18: while(true)
519 {
520 lab19: do {
521 if (!(in_grouping(g_v, 97, 259)))
522 {
523 break lab19;
524 }
525 break golab18;
526 } while (false);
527 if (cursor >= limit)
528 {
529 break lab13;
530 }
531 cursor++;
532 }
533 // gopast, line 52
534 golab20: while(true)
535 {
536 lab21: do {
537 if (!(out_grouping(g_v, 97, 259)))
538 {
539 break lab21;
540 }
541 break golab20;
542 } while (false);
543 if (cursor >= limit)
544 {
545 break lab13;
546 }
547 cursor++;
548 }
549 // setmark p2, line 52
550 I_p2 = cursor;
551 } while (false);
552 cursor = v_8;
553 return true;
554 }
555
556 private boolean r_postlude() {
557 int among_var;
558 int v_1;
559 // repeat, line 56
560 replab0: while(true)
561 {
562 v_1 = cursor;
563 lab1: do {
564 // (, line 56
565 // [, line 58
566 bra = cursor;
567 // substring, line 58
568 among_var = find_among(a_0, 3);
569 if (among_var == 0)
570 {
571 break lab1;
572 }
573 // ], line 58
574 ket = cursor;
575 switch(among_var) {
576 case 0:
577 break lab1;
578 case 1:
579 // (, line 59
580 // <-, line 59
581 slice_from("i");
582 break;
583 case 2:
584 // (, line 60
585 // <-, line 60
586 slice_from("u");
587 break;
588 case 3:
589 // (, line 61
590 // next, line 61
591 if (cursor >= limit)
592 {
593 break lab1;
594 }
595 cursor++;
596 break;
597 }
598 continue replab0;
599 } while (false);
600 cursor = v_1;
601 break replab0;
602 }
603 return true;
604 }
605
606 private boolean r_RV() {
607 if (!(I_pV <= cursor))
608 {
609 return false;
610 }
611 return true;
612 }
613
614 private boolean r_R1() {
615 if (!(I_p1 <= cursor))
616 {
617 return false;
618 }
619 return true;
620 }
621
622 private boolean r_R2() {
623 if (!(I_p2 <= cursor))
624 {
625 return false;
626 }
627 return true;
628 }
629
630 private boolean r_step_0() {
631 int among_var;
632 int v_1;
633 // (, line 72
634 // [, line 73
635 ket = cursor;
636 // substring, line 73
637 among_var = find_among_b(a_1, 16);
638 if (among_var == 0)
639 {
640 return false;
641 }
642 // ], line 73
643 bra = cursor;
644 // call R1, line 73
645 if (!r_R1())
646 {
647 return false;
648 }
649 switch(among_var) {
650 case 0:
651 return false;
652 case 1:
653 // (, line 75
654 // delete, line 75
655 slice_del();
656 break;
657 case 2:
658 // (, line 77
659 // <-, line 77
660 slice_from("a");
661 break;
662 case 3:
663 // (, line 79
664 // <-, line 79
665 slice_from("e");
666 break;
667 case 4:
668 // (, line 81
669 // <-, line 81
670 slice_from("i");
671 break;
672 case 5:
673 // (, line 83
674 // not, line 83
675 {
676 v_1 = limit - cursor;
677 lab0: do {
678 // literal, line 83
679 if (!(eq_s_b(2, "ab")))
680 {
681 break lab0;
682 }
683 return false;
684 } while (false);
685 cursor = limit - v_1;
686 }
687 // <-, line 83
688 slice_from("i");
689 break;
690 case 6:
691 // (, line 85
692 // <-, line 85
693 slice_from("at");
694 break;
695 case 7:
696 // (, line 87
697 // <-, line 87
698 slice_from("a\u0163i");
699 break;
700 }
701 return true;
702 }
703
704 private boolean r_combo_suffix() {
705 int among_var;
706 int v_1;
707 // test, line 91
708 v_1 = limit - cursor;
709 // (, line 91
710 // [, line 92
711 ket = cursor;
712 // substring, line 92
713 among_var = find_among_b(a_2, 46);
714 if (among_var == 0)
715 {
716 return false;
717 }
718 // ], line 92
719 bra = cursor;
720 // call R1, line 92
721 if (!r_R1())
722 {
723 return false;
724 }
725 // (, line 92
726 switch(among_var) {
727 case 0:
728 return false;
729 case 1:
730 // (, line 100
731 // <-, line 101
732 slice_from("abil");
733 break;
734 case 2:
735 // (, line 103
736 // <-, line 104
737 slice_from("ibil");
738 break;
739 case 3:
740 // (, line 106
741 // <-, line 107
742 slice_from("iv");
743 break;
744 case 4:
745 // (, line 112
746 // <-, line 113
747 slice_from("ic");
748 break;
749 case 5:
750 // (, line 117
751 // <-, line 118
752 slice_from("at");
753 break;
754 case 6:
755 // (, line 121
756 // <-, line 122
757 slice_from("it");
758 break;
759 }
760 // set standard_suffix_removed, line 125
761 B_standard_suffix_removed = true;
762 cursor = limit - v_1;
763 return true;
764 }
765
766 private boolean r_standard_suffix() {
767 int among_var;
768 int v_1;
769 // (, line 129
770 // unset standard_suffix_removed, line 130
771 B_standard_suffix_removed = false;
772 // repeat, line 131
773 replab0: while(true)
774 {
775 v_1 = limit - cursor;
776 lab1: do {
777 // call combo_suffix, line 131
778 if (!r_combo_suffix())
779 {
780 break lab1;
781 }
782 continue replab0;
783 } while (false);
784 cursor = limit - v_1;
785 break replab0;
786 }
787 // [, line 132
788 ket = cursor;
789 // substring, line 132
790 among_var = find_among_b(a_3, 62);
791 if (among_var == 0)
792 {
793 return false;
794 }
795 // ], line 132
796 bra = cursor;
797 // call R2, line 132
798 if (!r_R2())
799 {
800 return false;
801 }
802 // (, line 132
803 switch(among_var) {
804 case 0:
805 return false;
806 case 1:
807 // (, line 148
808 // delete, line 149
809 slice_del();
810 break;
811 case 2:
812 // (, line 151
813 // literal, line 152
814 if (!(eq_s_b(1, "\u0163")))
815 {
816 return false;
817 }
818 // ], line 152
819 bra = cursor;
820 // <-, line 152
821 slice_from("t");
822 break;
823 case 3:
824 // (, line 155
825 // <-, line 156
826 slice_from("ist");
827 break;
828 }
829 // set standard_suffix_removed, line 160
830 B_standard_suffix_removed = true;
831 return true;
832 }
833
834 private boolean r_verb_suffix() {
835 int among_var;
836 int v_1;
837 int v_2;
838 int v_3;
839 // setlimit, line 164
840 v_1 = limit - cursor;
841 // tomark, line 164
842 if (cursor < I_pV)
843 {
844 return false;
845 }
846 cursor = I_pV;
847 v_2 = limit_backward;
848 limit_backward = cursor;
849 cursor = limit - v_1;
850 // (, line 164
851 // [, line 165
852 ket = cursor;
853 // substring, line 165
854 among_var = find_among_b(a_4, 94);
855 if (among_var == 0)
856 {
857 limit_backward = v_2;
858 return false;
859 }
860 // ], line 165
861 bra = cursor;
862 switch(among_var) {
863 case 0:
864 limit_backward = v_2;
865 return false;
866 case 1:
867 // (, line 200
868 // or, line 200
869 lab0: do {
870 v_3 = limit - cursor;
871 lab1: do {
872 if (!(out_grouping_b(g_v, 97, 259)))
873 {
874 break lab1;
875 }
876 break lab0;
877 } while (false);
878 cursor = limit - v_3;
879 // literal, line 200
880 if (!(eq_s_b(1, "u")))
881 {
882 limit_backward = v_2;
883 return false;
884 }
885 } while (false);
886 // delete, line 200
887 slice_del();
888 break;
889 case 2:
890 // (, line 214
891 // delete, line 214
892 slice_del();
893 break;
894 }
895 limit_backward = v_2;
896 return true;
897 }
898
899 private boolean r_vowel_suffix() {
900 int among_var;
901 // (, line 218
902 // [, line 219
903 ket = cursor;
904 // substring, line 219
905 among_var = find_among_b(a_5, 5);
906 if (among_var == 0)
907 {
908 return false;
909 }
910 // ], line 219
911 bra = cursor;
912 // call RV, line 219
913 if (!r_RV())
914 {
915 return false;
916 }
917 switch(among_var) {
918 case 0:
919 return false;
920 case 1:
921 // (, line 220
922 // delete, line 220
923 slice_del();
924 break;
925 }
926 return true;
927 }
928
929 public boolean stem() {
930 int v_1;
931 int v_2;
932 int v_3;
933 int v_4;
934 int v_5;
935 int v_6;
936 int v_7;
937 int v_8;
938 // (, line 225
939 // do, line 226
940 v_1 = cursor;
941 lab0: do {
942 // call prelude, line 226
943 if (!r_prelude())
944 {
945 break lab0;
946 }
947 } while (false);
948 cursor = v_1;
949 // do, line 227
950 v_2 = cursor;
951 lab1: do {
952 // call mark_regions, line 227
953 if (!r_mark_regions())
954 {
955 break lab1;
956 }
957 } while (false);
958 cursor = v_2;
959 // backwards, line 228
960 limit_backward = cursor; cursor = limit;
961 // (, line 228
962 // do, line 229
963 v_3 = limit - cursor;
964 lab2: do {
965 // call step_0, line 229
966 if (!r_step_0())
967 {
968 break lab2;
969 }
970 } while (false);
971 cursor = limit - v_3;
972 // do, line 230
973 v_4 = limit - cursor;
974 lab3: do {
975 // call standard_suffix, line 230
976 if (!r_standard_suffix())
977 {
978 break lab3;
979 }
980 } while (false);
981 cursor = limit - v_4;
982 // do, line 231
983 v_5 = limit - cursor;
984 lab4: do {
985 // (, line 231
986 // or, line 231
987 lab5: do {
988 v_6 = limit - cursor;
989 lab6: do {
990 // Boolean test standard_suffix_removed, line 231
991 if (!(B_standard_suffix_removed))
992 {
993 break lab6;
994 }
995 break lab5;
996 } while (false);
997 cursor = limit - v_6;
998 // call verb_suffix, line 231
999 if (!r_verb_suffix())
1000 {
1001 break lab4;
1002 }
1003 } while (false);
1004 } while (false);
1005 cursor = limit - v_5;
1006 // do, line 232
1007 v_7 = limit - cursor;
1008 lab7: do {
1009 // call vowel_suffix, line 232
1010 if (!r_vowel_suffix())
1011 {
1012 break lab7;
1013 }
1014 } while (false);
1015 cursor = limit - v_7;
1016 cursor = limit_backward; // do, line 234
1017 v_8 = cursor;
1018 lab8: do {
1019 // call postlude, line 234
1020 if (!r_postlude())
1021 {
1022 break lab8;
1023 }
1024 } while (false);
1025 cursor = v_8;
1026 return true;
1027 }
1028
1029 public boolean equals( Object o ) {
1030 return o instanceof romanianStemmer;
1031 }
1032
1033 public int hashCode() {
1034 return romanianStemmer.class.getName().hashCode();
1035 }
1036
1037
1038
1039 }
1040