1 //! This file was generated automatically by the Snowball to Rust compiler
2 //! http://snowballstem.org/
3
4 #![allow(non_upper_case_globals)]
5 #![allow(non_snake_case)]
6 #![allow(unused_variables)]
7 #![allow(unused_mut)]
8 use snowball::SnowballEnv;
9 use snowball::Among;
10
11 static A_0: &'static [Among<Context>; 10] = &[
12 Among("\u{0B95}", -1, -1, None),
13 Among("\u{0B99}", -1, -1, None),
14 Among("\u{0B9A}", -1, -1, None),
15 Among("\u{0B9E}", -1, -1, None),
16 Among("\u{0BA4}", -1, -1, None),
17 Among("\u{0BA8}", -1, -1, None),
18 Among("\u{0BAA}", -1, -1, None),
19 Among("\u{0BAE}", -1, -1, None),
20 Among("\u{0BAF}", -1, -1, None),
21 Among("\u{0BB5}", -1, -1, None),
22 ];
23
24 static A_1: &'static [Among<Context>; 3] = &[
25 Among("\u{0BA8}\u{0BCD}\u{0BA4}\u{0BCD}", -1, -1, None),
26 Among("\u{0BA8}\u{0BCD}", -1, -1, None),
27 Among("\u{0BA8}\u{0BCD}\u{0BA4}", -1, -1, None),
28 ];
29
30 static A_2: &'static [Among<Context>; 3] = &[
31 Among("\u{0BC0}", -1, -1, None),
32 Among("\u{0BC8}", -1, -1, None),
33 Among("\u{0BBF}", -1, -1, None),
34 ];
35
36 static A_3: &'static [Among<Context>; 6] = &[
37 Among("\u{0B95}", -1, -1, None),
38 Among("\u{0B9A}", -1, -1, None),
39 Among("\u{0B9F}", -1, -1, None),
40 Among("\u{0BA4}", -1, -1, None),
41 Among("\u{0BAA}", -1, -1, None),
42 Among("\u{0BB1}", -1, -1, None),
43 ];
44
45 static A_4: &'static [Among<Context>; 6] = &[
46 Among("\u{0B95}", -1, -1, None),
47 Among("\u{0B9A}", -1, -1, None),
48 Among("\u{0B9F}", -1, -1, None),
49 Among("\u{0BA4}", -1, -1, None),
50 Among("\u{0BAA}", -1, -1, None),
51 Among("\u{0BB1}", -1, -1, None),
52 ];
53
54 static A_5: &'static [Among<Context>; 6] = &[
55 Among("\u{0B95}", -1, -1, None),
56 Among("\u{0B9A}", -1, -1, None),
57 Among("\u{0B9F}", -1, -1, None),
58 Among("\u{0BA4}", -1, -1, None),
59 Among("\u{0BAA}", -1, -1, None),
60 Among("\u{0BB1}", -1, -1, None),
61 ];
62
63 static A_6: &'static [Among<Context>; 6] = &[
64 Among("\u{0BAF}", -1, -1, None),
65 Among("\u{0BB0}", -1, -1, None),
66 Among("\u{0BB2}", -1, -1, None),
67 Among("\u{0BB3}", -1, -1, None),
68 Among("\u{0BB4}", -1, -1, None),
69 Among("\u{0BB5}", -1, -1, None),
70 ];
71
72 static A_7: &'static [Among<Context>; 6] = &[
73 Among("\u{0B99}", -1, -1, None),
74 Among("\u{0B9E}", -1, -1, None),
75 Among("\u{0BA3}", -1, -1, None),
76 Among("\u{0BA8}", -1, -1, None),
77 Among("\u{0BA9}", -1, -1, None),
78 Among("\u{0BAE}", -1, -1, None),
79 ];
80
81 static A_8: &'static [Among<Context>; 3] = &[
82 Among("\u{0BB5}\u{0BCD}", -1, -1, None),
83 Among("\u{0BAF}", -1, -1, None),
84 Among("\u{0BB5}", -1, -1, None),
85 ];
86
87 static A_9: &'static [Among<Context>; 8] = &[
88 Among("\u{0BC0}", -1, -1, None),
89 Among("\u{0BC1}", -1, -1, None),
90 Among("\u{0BC2}", -1, -1, None),
91 Among("\u{0BC6}", -1, -1, None),
92 Among("\u{0BC7}", -1, -1, None),
93 Among("\u{0BC8}", -1, -1, None),
94 Among("\u{0BBE}", -1, -1, None),
95 Among("\u{0BBF}", -1, -1, None),
96 ];
97
98 static A_10: &'static [Among<Context>; 8] = &[
99 Among("\u{0BC0}", -1, -1, None),
100 Among("\u{0BC1}", -1, -1, None),
101 Among("\u{0BC2}", -1, -1, None),
102 Among("\u{0BC6}", -1, -1, None),
103 Among("\u{0BC7}", -1, -1, None),
104 Among("\u{0BC8}", -1, -1, None),
105 Among("\u{0BBE}", -1, -1, None),
106 Among("\u{0BBF}", -1, -1, None),
107 ];
108
109 static A_11: &'static [Among<Context>; 3] = &[
110 Among("\u{0B85}", -1, -1, None),
111 Among("\u{0B87}", -1, -1, None),
112 Among("\u{0B89}", -1, -1, None),
113 ];
114
115 static A_12: &'static [Among<Context>; 10] = &[
116 Among("\u{0B95}", -1, -1, None),
117 Among("\u{0B99}", -1, -1, None),
118 Among("\u{0B9A}", -1, -1, None),
119 Among("\u{0B9E}", -1, -1, None),
120 Among("\u{0BA4}", -1, -1, None),
121 Among("\u{0BA8}", -1, -1, None),
122 Among("\u{0BAA}", -1, -1, None),
123 Among("\u{0BAE}", -1, -1, None),
124 Among("\u{0BAF}", -1, -1, None),
125 Among("\u{0BB5}", -1, -1, None),
126 ];
127
128 static A_13: &'static [Among<Context>; 6] = &[
129 Among("\u{0B95}", -1, -1, None),
130 Among("\u{0B9A}", -1, -1, None),
131 Among("\u{0B9F}", -1, -1, None),
132 Among("\u{0BA4}", -1, -1, None),
133 Among("\u{0BAA}", -1, -1, None),
134 Among("\u{0BB1}", -1, -1, None),
135 ];
136
137 static A_14: &'static [Among<Context>; 3] = &[
138 Among("\u{0BC7}", -1, -1, None),
139 Among("\u{0BCB}", -1, -1, None),
140 Among("\u{0BBE}", -1, -1, None),
141 ];
142
143 static A_15: &'static [Among<Context>; 2] = &[
144 Among("\u{0BAA}\u{0BBF}", -1, -1, None),
145 Among("\u{0BB5}\u{0BBF}", -1, -1, None),
146 ];
147
148 static A_16: &'static [Among<Context>; 8] = &[
149 Among("\u{0BC0}", -1, -1, None),
150 Among("\u{0BC1}", -1, -1, None),
151 Among("\u{0BC2}", -1, -1, None),
152 Among("\u{0BC6}", -1, -1, None),
153 Among("\u{0BC7}", -1, -1, None),
154 Among("\u{0BC8}", -1, -1, None),
155 Among("\u{0BBE}", -1, -1, None),
156 Among("\u{0BBF}", -1, -1, None),
157 ];
158
159 static A_17: &'static [Among<Context>; 13] = &[
160 Among("\u{0BAA}\u{0B9F}\u{0BCD}\u{0B9F}\u{0BC1}", -1, -1, None),
161 Among("\u{0BB5}\u{0BBF}\u{0B9F}\u{0BCD}\u{0B9F}\u{0BC1}", -1, -1, None),
162 Among("\u{0BAA}\u{0B9F}\u{0BC1}", -1, -1, None),
163 Among("\u{0BB5}\u{0BBF}\u{0B9F}\u{0BC1}", -1, -1, None),
164 Among("\u{0BAA}\u{0B9F}\u{0BCD}\u{0B9F}\u{0BA4}\u{0BC1}", -1, -1, None),
165 Among("\u{0BC6}\u{0BB2}\u{0BCD}\u{0BB2}\u{0BBE}\u{0BAE}\u{0BCD}", -1, -1, None),
166 Among("\u{0BAA}\u{0B9F}\u{0BCD}\u{0B9F}", -1, -1, None),
167 Among("\u{0BAA}\u{0B9F}\u{0BCD}\u{0B9F}\u{0BA3}", -1, -1, None),
168 Among("\u{0BA4}\u{0BBE}\u{0BA9}", -1, -1, None),
169 Among("\u{0BAA}\u{0B9F}\u{0BBF}\u{0BA4}\u{0BBE}\u{0BA9}", 8, -1, None),
170 Among("\u{0B95}\u{0BC1}\u{0BB0}\u{0BBF}\u{0BAF}", -1, -1, None),
171 Among("\u{0BAA}\u{0B9F}\u{0BBF}", -1, -1, None),
172 Among("\u{0BAA}\u{0BB1}\u{0BCD}\u{0BB1}\u{0BBF}", -1, -1, None),
173 ];
174
175 static A_18: &'static [Among<Context>; 6] = &[
176 Among("\u{0B95}", -1, -1, None),
177 Among("\u{0B9A}", -1, -1, None),
178 Among("\u{0B9F}", -1, -1, None),
179 Among("\u{0BA4}", -1, -1, None),
180 Among("\u{0BAA}", -1, -1, None),
181 Among("\u{0BB1}", -1, -1, None),
182 ];
183
184 static A_19: &'static [Among<Context>; 6] = &[
185 Among("\u{0B95}", -1, -1, None),
186 Among("\u{0B9A}", -1, -1, None),
187 Among("\u{0B9F}", -1, -1, None),
188 Among("\u{0BA4}", -1, -1, None),
189 Among("\u{0BAA}", -1, -1, None),
190 Among("\u{0BB1}", -1, -1, None),
191 ];
192
193 static A_20: &'static [Among<Context>; 8] = &[
194 Among("\u{0BC0}", -1, -1, None),
195 Among("\u{0BC1}", -1, -1, None),
196 Among("\u{0BC2}", -1, -1, None),
197 Among("\u{0BC6}", -1, -1, None),
198 Among("\u{0BC7}", -1, -1, None),
199 Among("\u{0BC8}", -1, -1, None),
200 Among("\u{0BBE}", -1, -1, None),
201 Among("\u{0BBF}", -1, -1, None),
202 ];
203
204 static A_21: &'static [Among<Context>; 8] = &[
205 Among("\u{0BC0}", -1, -1, None),
206 Among("\u{0BC1}", -1, -1, None),
207 Among("\u{0BC2}", -1, -1, None),
208 Among("\u{0BC6}", -1, -1, None),
209 Among("\u{0BC7}", -1, -1, None),
210 Among("\u{0BC8}", -1, -1, None),
211 Among("\u{0BBE}", -1, -1, None),
212 Among("\u{0BBF}", -1, -1, None),
213 ];
214
215 static A_22: &'static [Among<Context>; 2] = &[
216 Among("\u{0BAA}\u{0B9F}\u{0BC1}", -1, -1, None),
217 Among("\u{0B95}\u{0BCA}\u{0BA3}\u{0BCD}\u{0B9F}\u{0BBF}\u{0BB0}\u{0BCD}", -1, -1, None),
218 ];
219
220 static A_23: &'static [Among<Context>; 12] = &[
221 Among("\u{0B85}", -1, -1, None),
222 Among("\u{0B86}", -1, -1, None),
223 Among("\u{0B87}", -1, -1, None),
224 Among("\u{0B88}", -1, -1, None),
225 Among("\u{0B89}", -1, -1, None),
226 Among("\u{0B8A}", -1, -1, None),
227 Among("\u{0B8E}", -1, -1, None),
228 Among("\u{0B8F}", -1, -1, None),
229 Among("\u{0B90}", -1, -1, None),
230 Among("\u{0B92}", -1, -1, None),
231 Among("\u{0B93}", -1, -1, None),
232 Among("\u{0B94}", -1, -1, None),
233 ];
234
235 static A_24: &'static [Among<Context>; 8] = &[
236 Among("\u{0BC0}", -1, -1, None),
237 Among("\u{0BC1}", -1, -1, None),
238 Among("\u{0BC2}", -1, -1, None),
239 Among("\u{0BC6}", -1, -1, None),
240 Among("\u{0BC7}", -1, -1, None),
241 Among("\u{0BC8}", -1, -1, None),
242 Among("\u{0BBE}", -1, -1, None),
243 Among("\u{0BBF}", -1, -1, None),
244 ];
245
246 static A_25: &'static [Among<Context>; 6] = &[
247 Among("\u{0B95}\u{0BBF}\u{0BA9}\u{0BCD}\u{0BB1}\u{0BCD}", -1, -1, None),
248 Among("\u{0BBE}\u{0BA8}\u{0BBF}\u{0BA9}\u{0BCD}\u{0BB1}\u{0BCD}", -1, -1, None),
249 Among("\u{0B95}\u{0BBF}\u{0BB1}\u{0BCD}", -1, -1, None),
250 Among("\u{0B95}\u{0BBF}\u{0BA9}\u{0BCD}\u{0BB1}", -1, -1, None),
251 Among("\u{0BBE}\u{0BA8}\u{0BBF}\u{0BA9}\u{0BCD}\u{0BB1}", -1, -1, None),
252 Among("\u{0B95}\u{0BBF}\u{0BB1}", -1, -1, None),
253 ];
254
255 #[derive(Clone)]
256 struct Context {
257 i_length: usize,
258 b_found_wrong_ending: bool,
259 b_found_vetrumai_urupu: bool,
260 b_found_a_match: bool,
261 }
262
r_has_min_length(env: &mut SnowballEnv, context: &mut Context) -> bool263 fn r_has_min_length(env: &mut SnowballEnv, context: &mut Context) -> bool {
264 // (, line 104
265 context.i_length = env.current.chars().count();
266 if !(context.i_length > 4){
267 return false;
268 }
269 return true;
270 }
271
r_fix_va_start(env: &mut SnowballEnv, context: &mut Context) -> bool272 fn r_fix_va_start(env: &mut SnowballEnv, context: &mut Context) -> bool {
273 // (, line 109
274 // or, line 110
275 'lab0: loop {
276 let v_1 = env.cursor;
277 'lab1: loop {
278 // (, line 110
279 // and, line 110
280 let v_2 = env.cursor;
281 // try, line 110
282 let v_3 = env.cursor;
283 'lab2: loop {
284 // literal, line 110
285 if !env.eq_s(&"\u{0BB5}\u{0BCB}") {
286 env.cursor = v_3;
287 break 'lab2;
288 }
289 break 'lab2;
290 }
291 env.cursor = v_2;
292 // [, line 110
293 env.bra = env.cursor;
294 // literal, line 110
295 if !env.eq_s(&"\u{0BB5}\u{0BCB}") {
296 break 'lab1;
297 }
298 // ], line 110
299 env.ket = env.cursor;
300 // <-, line 110
301 if !env.slice_from("\u{0B93}") {
302 return false;
303 }
304 break 'lab0;
305 }
306 env.cursor = v_1;
307 'lab3: loop {
308 // (, line 111
309 // and, line 111
310 let v_4 = env.cursor;
311 // try, line 111
312 let v_5 = env.cursor;
313 'lab4: loop {
314 // literal, line 111
315 if !env.eq_s(&"\u{0BB5}\u{0BCA}") {
316 env.cursor = v_5;
317 break 'lab4;
318 }
319 break 'lab4;
320 }
321 env.cursor = v_4;
322 // [, line 111
323 env.bra = env.cursor;
324 // literal, line 111
325 if !env.eq_s(&"\u{0BB5}\u{0BCA}") {
326 break 'lab3;
327 }
328 // ], line 111
329 env.ket = env.cursor;
330 // <-, line 111
331 if !env.slice_from("\u{0B92}") {
332 return false;
333 }
334 break 'lab0;
335 }
336 env.cursor = v_1;
337 'lab5: loop {
338 // (, line 112
339 // and, line 112
340 let v_6 = env.cursor;
341 // try, line 112
342 let v_7 = env.cursor;
343 'lab6: loop {
344 // literal, line 112
345 if !env.eq_s(&"\u{0BB5}\u{0BC1}") {
346 env.cursor = v_7;
347 break 'lab6;
348 }
349 break 'lab6;
350 }
351 env.cursor = v_6;
352 // [, line 112
353 env.bra = env.cursor;
354 // literal, line 112
355 if !env.eq_s(&"\u{0BB5}\u{0BC1}") {
356 break 'lab5;
357 }
358 // ], line 112
359 env.ket = env.cursor;
360 // <-, line 112
361 if !env.slice_from("\u{0B89}") {
362 return false;
363 }
364 break 'lab0;
365 }
366 env.cursor = v_1;
367 // (, line 113
368 // and, line 113
369 let v_8 = env.cursor;
370 // try, line 113
371 let v_9 = env.cursor;
372 'lab7: loop {
373 // literal, line 113
374 if !env.eq_s(&"\u{0BB5}\u{0BC2}") {
375 env.cursor = v_9;
376 break 'lab7;
377 }
378 break 'lab7;
379 }
380 env.cursor = v_8;
381 // [, line 113
382 env.bra = env.cursor;
383 // literal, line 113
384 if !env.eq_s(&"\u{0BB5}\u{0BC2}") {
385 return false;
386 }
387 // ], line 113
388 env.ket = env.cursor;
389 // <-, line 113
390 if !env.slice_from("\u{0B8A}") {
391 return false;
392 }
393 break 'lab0;
394 }
395 return true;
396 }
397
r_fix_endings(env: &mut SnowballEnv, context: &mut Context) -> bool398 fn r_fix_endings(env: &mut SnowballEnv, context: &mut Context) -> bool {
399 // (, line 116
400 // set found_wrong_ending, line 117
401 context.b_found_wrong_ending = true;
402 // repeat, line 118
403 'replab0: loop{
404 let v_1 = env.cursor;
405 'lab1: for _ in 0..1 {
406 // (, line 118
407 // Boolean test found_wrong_ending, line 118
408 if !context.b_found_wrong_ending {
409 break 'lab1;
410 }
411 // (, line 118
412 // do, line 118
413 let v_2 = env.cursor;
414 'lab2: loop {
415 // call fix_ending, line 118
416 if !r_fix_ending(env, context) {
417 break 'lab2;
418 }
419 break 'lab2;
420 }
421 env.cursor = v_2;
422 continue 'replab0;
423 }
424 env.cursor = v_1;
425 break 'replab0;
426 }
427 return true;
428 }
429
r_remove_question_prefixes(env: &mut SnowballEnv, context: &mut Context) -> bool430 fn r_remove_question_prefixes(env: &mut SnowballEnv, context: &mut Context) -> bool {
431 // (, line 121
432 // [, line 122
433 env.bra = env.cursor;
434 // (, line 122
435 // literal, line 122
436 if !env.eq_s(&"\u{0B8E}") {
437 return false;
438 }
439 // among, line 122
440 if env.find_among(A_0, context) == 0 {
441 return false;
442 }
443 // literal, line 122
444 if !env.eq_s(&"\u{0BCD}") {
445 return false;
446 }
447 // ], line 122
448 env.ket = env.cursor;
449 // delete, line 122
450 if !env.slice_del() {
451 return false;
452 }
453 // do, line 123
454 let v_1 = env.cursor;
455 'lab0: loop {
456 // call fix_va_start, line 123
457 if !r_fix_va_start(env, context) {
458 break 'lab0;
459 }
460 break 'lab0;
461 }
462 env.cursor = v_1;
463 return true;
464 }
465
r_fix_ending(env: &mut SnowballEnv, context: &mut Context) -> bool466 fn r_fix_ending(env: &mut SnowballEnv, context: &mut Context) -> bool {
467 // (, line 126
468 // unset found_wrong_ending, line 127
469 context.b_found_wrong_ending = false;
470 context.i_length = env.current.chars().count();
471 if !(context.i_length > 3){
472 return false;
473 }
474 // backwards, line 130
475 env.limit_backward = env.cursor;
476 env.cursor = env.limit;
477 // (, line 130
478 // or, line 132
479 'lab0: loop {
480 let v_1 = env.limit - env.cursor;
481 'lab1: loop {
482 // (, line 131
483 // [, line 131
484 env.ket = env.cursor;
485 // among, line 131
486 if env.find_among_b(A_1, context) == 0 {
487 break 'lab1;
488 }
489 // ], line 131
490 env.bra = env.cursor;
491 // delete, line 131
492 if !env.slice_del() {
493 return false;
494 }
495 break 'lab0;
496 }
497 env.cursor = env.limit - v_1;
498 'lab2: loop {
499 // (, line 133
500 // [, line 133
501 env.ket = env.cursor;
502 // literal, line 133
503 if !env.eq_s_b(&"\u{0BAF}\u{0BCD}") {
504 break 'lab2;
505 }
506 // test, line 133
507 let v_2 = env.limit - env.cursor;
508 // among, line 133
509 if env.find_among_b(A_2, context) == 0 {
510 break 'lab2;
511 }
512 env.cursor = env.limit - v_2;
513 // ], line 133
514 env.bra = env.cursor;
515 // delete, line 133
516 if !env.slice_del() {
517 return false;
518 }
519 break 'lab0;
520 }
521 env.cursor = env.limit - v_1;
522 'lab3: loop {
523 // (, line 135
524 // [, line 135
525 env.ket = env.cursor;
526 // or, line 135
527 'lab4: loop {
528 let v_3 = env.limit - env.cursor;
529 'lab5: loop {
530 // literal, line 135
531 if !env.eq_s_b(&"\u{0B9F}\u{0BCD}\u{0BAA}\u{0BCD}") {
532 break 'lab5;
533 }
534 break 'lab4;
535 }
536 env.cursor = env.limit - v_3;
537 // literal, line 135
538 if !env.eq_s_b(&"\u{0B9F}\u{0BCD}\u{0B95}\u{0BCD}") {
539 break 'lab3;
540 }
541 break 'lab4;
542 }
543 // ], line 135
544 env.bra = env.cursor;
545 // <-, line 135
546 if !env.slice_from("\u{0BB3}\u{0BCD}") {
547 return false;
548 }
549 break 'lab0;
550 }
551 env.cursor = env.limit - v_1;
552 'lab6: loop {
553 // (, line 137
554 // [, line 137
555 env.ket = env.cursor;
556 // literal, line 137
557 if !env.eq_s_b(&"\u{0BA9}\u{0BCD}\u{0BB1}\u{0BCD}") {
558 break 'lab6;
559 }
560 // ], line 137
561 env.bra = env.cursor;
562 // <-, line 137
563 if !env.slice_from("\u{0BB2}\u{0BCD}") {
564 return false;
565 }
566 break 'lab0;
567 }
568 env.cursor = env.limit - v_1;
569 'lab7: loop {
570 // (, line 140
571 // [, line 140
572 env.ket = env.cursor;
573 // literal, line 140
574 if !env.eq_s_b(&"\u{0BB1}\u{0BCD}\u{0B95}\u{0BCD}") {
575 break 'lab7;
576 }
577 // ], line 140
578 env.bra = env.cursor;
579 // <-, line 140
580 if !env.slice_from("\u{0BB2}\u{0BCD}") {
581 return false;
582 }
583 break 'lab0;
584 }
585 env.cursor = env.limit - v_1;
586 'lab8: loop {
587 // (, line 142
588 // [, line 142
589 env.ket = env.cursor;
590 // literal, line 142
591 if !env.eq_s_b(&"\u{0B9F}\u{0BCD}\u{0B9F}\u{0BCD}") {
592 break 'lab8;
593 }
594 // ], line 142
595 env.bra = env.cursor;
596 // <-, line 142
597 if !env.slice_from("\u{0B9F}\u{0BC1}") {
598 return false;
599 }
600 break 'lab0;
601 }
602 env.cursor = env.limit - v_1;
603 'lab9: loop {
604 // (, line 144
605 // Boolean test found_vetrumai_urupu, line 144
606 if !context.b_found_vetrumai_urupu {
607 break 'lab9;
608 }
609 // [, line 144
610 env.ket = env.cursor;
611 // literal, line 144
612 if !env.eq_s_b(&"\u{0BA4}\u{0BCD}\u{0BA4}\u{0BCD}") {
613 break 'lab9;
614 }
615 // (, line 144
616 // test, line 144
617 let v_4 = env.limit - env.cursor;
618 // not, line 144
619 let v_5 = env.limit - env.cursor;
620 'lab10: loop {
621 // literal, line 144
622 if !env.eq_s_b(&"\u{0BC8}") {
623 break 'lab10;
624 }
625 break 'lab9;
626 }
627 env.cursor = env.limit - v_5;
628 env.cursor = env.limit - v_4;
629 // ], line 144
630 env.bra = env.cursor;
631 // <-, line 144
632 if !env.slice_from("\u{0BAE}\u{0BCD}") {
633 return false;
634 }
635 // ], line 144
636 env.bra = env.cursor;
637 break 'lab0;
638 }
639 env.cursor = env.limit - v_1;
640 'lab11: loop {
641 // (, line 146
642 // [, line 146
643 env.ket = env.cursor;
644 // or, line 146
645 'lab12: loop {
646 let v_6 = env.limit - env.cursor;
647 'lab13: loop {
648 // literal, line 146
649 if !env.eq_s_b(&"\u{0BC1}\u{0B95}\u{0BCD}") {
650 break 'lab13;
651 }
652 break 'lab12;
653 }
654 env.cursor = env.limit - v_6;
655 // literal, line 146
656 if !env.eq_s_b(&"\u{0BC1}\u{0B95}\u{0BCD}\u{0B95}\u{0BCD}") {
657 break 'lab11;
658 }
659 break 'lab12;
660 }
661 // ], line 146
662 env.bra = env.cursor;
663 // <-, line 146
664 if !env.slice_from("\u{0BCD}") {
665 return false;
666 }
667 break 'lab0;
668 }
669 env.cursor = env.limit - v_1;
670 'lab14: loop {
671 // (, line 148
672 // [, line 148
673 env.ket = env.cursor;
674 // literal, line 148
675 if !env.eq_s_b(&"\u{0BCD}") {
676 break 'lab14;
677 }
678 // among, line 148
679 if env.find_among_b(A_3, context) == 0 {
680 break 'lab14;
681 }
682 // literal, line 148
683 if !env.eq_s_b(&"\u{0BCD}") {
684 break 'lab14;
685 }
686 // among, line 148
687 if env.find_among_b(A_4, context) == 0 {
688 break 'lab14;
689 }
690 // ], line 148
691 env.bra = env.cursor;
692 // delete, line 148
693 if !env.slice_del() {
694 return false;
695 }
696 break 'lab0;
697 }
698 env.cursor = env.limit - v_1;
699 'lab15: loop {
700 // (, line 150
701 // [, line 150
702 env.ket = env.cursor;
703 // literal, line 150
704 if !env.eq_s_b(&"\u{0BC1}\u{0B95}\u{0BCD}") {
705 break 'lab15;
706 }
707 // ], line 150
708 env.bra = env.cursor;
709 // <-, line 150
710 if !env.slice_from("\u{0BCD}") {
711 return false;
712 }
713 break 'lab0;
714 }
715 env.cursor = env.limit - v_1;
716 'lab16: loop {
717 // (, line 152
718 // [, line 152
719 env.ket = env.cursor;
720 // literal, line 152
721 if !env.eq_s_b(&"\u{0BCD}") {
722 break 'lab16;
723 }
724 // among, line 152
725 if env.find_among_b(A_5, context) == 0 {
726 break 'lab16;
727 }
728 // ], line 152
729 env.bra = env.cursor;
730 // delete, line 152
731 if !env.slice_del() {
732 return false;
733 }
734 break 'lab0;
735 }
736 env.cursor = env.limit - v_1;
737 'lab17: loop {
738 // (, line 154
739 // [, line 154
740 env.ket = env.cursor;
741 // literal, line 154
742 if !env.eq_s_b(&"\u{0BCD}") {
743 break 'lab17;
744 }
745 // (, line 154
746 // or, line 154
747 'lab18: loop {
748 let v_7 = env.limit - env.cursor;
749 'lab19: loop {
750 // among, line 154
751 if env.find_among_b(A_6, context) == 0 {
752 break 'lab19;
753 }
754 break 'lab18;
755 }
756 env.cursor = env.limit - v_7;
757 // among, line 154
758 if env.find_among_b(A_7, context) == 0 {
759 break 'lab17;
760 }
761 break 'lab18;
762 }
763 // literal, line 154
764 if !env.eq_s_b(&"\u{0BCD}") {
765 break 'lab17;
766 }
767 // ], line 154
768 env.bra = env.cursor;
769 // <-, line 154
770 if !env.slice_from("\u{0BCD}") {
771 return false;
772 }
773 break 'lab0;
774 }
775 env.cursor = env.limit - v_1;
776 'lab20: loop {
777 // (, line 156
778 // [, line 156
779 env.ket = env.cursor;
780 // among, line 156
781 if env.find_among_b(A_8, context) == 0 {
782 break 'lab20;
783 }
784 // ], line 156
785 env.bra = env.cursor;
786 // delete, line 156
787 if !env.slice_del() {
788 return false;
789 }
790 break 'lab0;
791 }
792 env.cursor = env.limit - v_1;
793 'lab21: loop {
794 // (, line 158
795 // [, line 158
796 env.ket = env.cursor;
797 // literal, line 158
798 if !env.eq_s_b(&"\u{0BA9}\u{0BC1}") {
799 break 'lab21;
800 }
801 // (, line 158
802 // test, line 158
803 let v_8 = env.limit - env.cursor;
804 // not, line 158
805 let v_9 = env.limit - env.cursor;
806 'lab22: loop {
807 // among, line 158
808 if env.find_among_b(A_9, context) == 0 {
809 break 'lab22;
810 }
811 break 'lab21;
812 }
813 env.cursor = env.limit - v_9;
814 env.cursor = env.limit - v_8;
815 // ], line 158
816 env.bra = env.cursor;
817 // delete, line 158
818 if !env.slice_del() {
819 return false;
820 }
821 break 'lab0;
822 }
823 env.cursor = env.limit - v_1;
824 'lab23: loop {
825 // (, line 160
826 // [, line 160
827 env.ket = env.cursor;
828 // literal, line 160
829 if !env.eq_s_b(&"\u{0B99}\u{0BCD}") {
830 break 'lab23;
831 }
832 // (, line 160
833 // test, line 160
834 let v_10 = env.limit - env.cursor;
835 // not, line 160
836 let v_11 = env.limit - env.cursor;
837 'lab24: loop {
838 // literal, line 160
839 if !env.eq_s_b(&"\u{0BC8}") {
840 break 'lab24;
841 }
842 break 'lab23;
843 }
844 env.cursor = env.limit - v_11;
845 env.cursor = env.limit - v_10;
846 // ], line 160
847 env.bra = env.cursor;
848 // <-, line 160
849 if !env.slice_from("\u{0BAE}\u{0BCD}") {
850 return false;
851 }
852 break 'lab0;
853 }
854 env.cursor = env.limit - v_1;
855 'lab25: loop {
856 // (, line 162
857 // [, line 162
858 env.ket = env.cursor;
859 // literal, line 162
860 if !env.eq_s_b(&"\u{0B99}\u{0BCD}") {
861 break 'lab25;
862 }
863 // ], line 162
864 env.bra = env.cursor;
865 // delete, line 162
866 if !env.slice_del() {
867 return false;
868 }
869 break 'lab0;
870 }
871 env.cursor = env.limit - v_1;
872 // (, line 164
873 // [, line 164
874 env.ket = env.cursor;
875 // literal, line 164
876 if !env.eq_s_b(&"\u{0BCD}") {
877 return false;
878 }
879 // (, line 164
880 // test, line 164
881 let v_12 = env.limit - env.cursor;
882 // (, line 164
883 // or, line 164
884 'lab26: loop {
885 let v_13 = env.limit - env.cursor;
886 'lab27: loop {
887 // among, line 164
888 if env.find_among_b(A_10, context) == 0 {
889 break 'lab27;
890 }
891 break 'lab26;
892 }
893 env.cursor = env.limit - v_13;
894 // literal, line 164
895 if !env.eq_s_b(&"\u{0BCD}") {
896 return false;
897 }
898 break 'lab26;
899 }
900 env.cursor = env.limit - v_12;
901 // ], line 164
902 env.bra = env.cursor;
903 // delete, line 164
904 if !env.slice_del() {
905 return false;
906 }
907 break 'lab0;
908 }
909 env.cursor = env.limit_backward;
910 // set found_wrong_ending, line 167
911 context.b_found_wrong_ending = true;
912 return true;
913 }
914
r_remove_pronoun_prefixes(env: &mut SnowballEnv, context: &mut Context) -> bool915 fn r_remove_pronoun_prefixes(env: &mut SnowballEnv, context: &mut Context) -> bool {
916 // (, line 170
917 // unset found_a_match, line 171
918 context.b_found_a_match = false;
919 // [, line 172
920 env.bra = env.cursor;
921 // among, line 172
922 if env.find_among(A_11, context) == 0 {
923 return false;
924 }
925 // among, line 172
926 if env.find_among(A_12, context) == 0 {
927 return false;
928 }
929 // literal, line 172
930 if !env.eq_s(&"\u{0BCD}") {
931 return false;
932 }
933 // ], line 172
934 env.ket = env.cursor;
935 // delete, line 172
936 if !env.slice_del() {
937 return false;
938 }
939 // (, line 173
940 // set found_a_match, line 173
941 context.b_found_a_match = true;
942 // do, line 174
943 let v_1 = env.cursor;
944 'lab0: loop {
945 // call fix_va_start, line 174
946 if !r_fix_va_start(env, context) {
947 break 'lab0;
948 }
949 break 'lab0;
950 }
951 env.cursor = v_1;
952 return true;
953 }
954
r_remove_plural_suffix(env: &mut SnowballEnv, context: &mut Context) -> bool955 fn r_remove_plural_suffix(env: &mut SnowballEnv, context: &mut Context) -> bool {
956 // (, line 177
957 // unset found_a_match, line 178
958 context.b_found_a_match = false;
959 // backwards, line 179
960 env.limit_backward = env.cursor;
961 env.cursor = env.limit;
962 // (, line 179
963 // or, line 180
964 'lab0: loop {
965 let v_1 = env.limit - env.cursor;
966 'lab1: loop {
967 // (, line 180
968 // [, line 180
969 env.ket = env.cursor;
970 // literal, line 180
971 if !env.eq_s_b(&"\u{0BC1}\u{0B99}\u{0BCD}\u{0B95}\u{0BB3}\u{0BCD}") {
972 break 'lab1;
973 }
974 // (, line 180
975 // test, line 180
976 let v_2 = env.limit - env.cursor;
977 // not, line 180
978 let v_3 = env.limit - env.cursor;
979 'lab2: loop {
980 // among, line 180
981 if env.find_among_b(A_13, context) == 0 {
982 break 'lab2;
983 }
984 break 'lab1;
985 }
986 env.cursor = env.limit - v_3;
987 env.cursor = env.limit - v_2;
988 // ], line 180
989 env.bra = env.cursor;
990 // <-, line 180
991 if !env.slice_from("\u{0BCD}") {
992 return false;
993 }
994 break 'lab0;
995 }
996 env.cursor = env.limit - v_1;
997 'lab3: loop {
998 // (, line 181
999 // [, line 181
1000 env.ket = env.cursor;
1001 // literal, line 181
1002 if !env.eq_s_b(&"\u{0BB1}\u{0BCD}\u{0B95}\u{0BB3}\u{0BCD}") {
1003 break 'lab3;
1004 }
1005 // ], line 181
1006 env.bra = env.cursor;
1007 // <-, line 181
1008 if !env.slice_from("\u{0BB2}\u{0BCD}") {
1009 return false;
1010 }
1011 break 'lab0;
1012 }
1013 env.cursor = env.limit - v_1;
1014 'lab4: loop {
1015 // (, line 182
1016 // [, line 182
1017 env.ket = env.cursor;
1018 // literal, line 182
1019 if !env.eq_s_b(&"\u{0B9F}\u{0BCD}\u{0B95}\u{0BB3}\u{0BCD}") {
1020 break 'lab4;
1021 }
1022 // ], line 182
1023 env.bra = env.cursor;
1024 // <-, line 182
1025 if !env.slice_from("\u{0BB3}\u{0BCD}") {
1026 return false;
1027 }
1028 break 'lab0;
1029 }
1030 env.cursor = env.limit - v_1;
1031 // (, line 183
1032 // [, line 183
1033 env.ket = env.cursor;
1034 // literal, line 183
1035 if !env.eq_s_b(&"\u{0B95}\u{0BB3}\u{0BCD}") {
1036 return false;
1037 }
1038 // ], line 183
1039 env.bra = env.cursor;
1040 // delete, line 183
1041 if !env.slice_del() {
1042 return false;
1043 }
1044 break 'lab0;
1045 }
1046 // (, line 184
1047 // set found_a_match, line 184
1048 context.b_found_a_match = true;
1049 env.cursor = env.limit_backward;
1050 return true;
1051 }
1052
r_remove_question_suffixes(env: &mut SnowballEnv, context: &mut Context) -> bool1053 fn r_remove_question_suffixes(env: &mut SnowballEnv, context: &mut Context) -> bool {
1054 // (, line 188
1055 // call has_min_length, line 189
1056 if !r_has_min_length(env, context) {
1057 return false;
1058 }
1059 // unset found_a_match, line 190
1060 context.b_found_a_match = false;
1061 // backwards, line 191
1062 env.limit_backward = env.cursor;
1063 env.cursor = env.limit;
1064 // (, line 191
1065 // do, line 192
1066 let v_1 = env.limit - env.cursor;
1067 'lab0: loop {
1068 // (, line 192
1069 // [, line 193
1070 env.ket = env.cursor;
1071 // among, line 193
1072 if env.find_among_b(A_14, context) == 0 {
1073 break 'lab0;
1074 }
1075 // ], line 193
1076 env.bra = env.cursor;
1077 // <-, line 193
1078 if !env.slice_from("\u{0BCD}") {
1079 return false;
1080 }
1081 // (, line 194
1082 // set found_a_match, line 194
1083 context.b_found_a_match = true;
1084 break 'lab0;
1085 }
1086 env.cursor = env.limit - v_1;
1087 env.cursor = env.limit_backward;
1088 // do, line 197
1089 let v_2 = env.cursor;
1090 'lab1: loop {
1091 // call fix_endings, line 197
1092 if !r_fix_endings(env, context) {
1093 break 'lab1;
1094 }
1095 break 'lab1;
1096 }
1097 env.cursor = v_2;
1098 return true;
1099 }
1100
r_remove_command_suffixes(env: &mut SnowballEnv, context: &mut Context) -> bool1101 fn r_remove_command_suffixes(env: &mut SnowballEnv, context: &mut Context) -> bool {
1102 // (, line 200
1103 // call has_min_length, line 201
1104 if !r_has_min_length(env, context) {
1105 return false;
1106 }
1107 // unset found_a_match, line 202
1108 context.b_found_a_match = false;
1109 // backwards, line 203
1110 env.limit_backward = env.cursor;
1111 env.cursor = env.limit;
1112 // (, line 203
1113 // [, line 204
1114 env.ket = env.cursor;
1115 // among, line 204
1116 if env.find_among_b(A_15, context) == 0 {
1117 return false;
1118 }
1119 // ], line 204
1120 env.bra = env.cursor;
1121 // delete, line 204
1122 if !env.slice_del() {
1123 return false;
1124 }
1125 // (, line 205
1126 // set found_a_match, line 205
1127 context.b_found_a_match = true;
1128 env.cursor = env.limit_backward;
1129 return true;
1130 }
1131
r_remove_um(env: &mut SnowballEnv, context: &mut Context) -> bool1132 fn r_remove_um(env: &mut SnowballEnv, context: &mut Context) -> bool {
1133 // (, line 209
1134 // unset found_a_match, line 210
1135 context.b_found_a_match = false;
1136 // call has_min_length, line 211
1137 if !r_has_min_length(env, context) {
1138 return false;
1139 }
1140 // backwards, line 212
1141 env.limit_backward = env.cursor;
1142 env.cursor = env.limit;
1143 // (, line 212
1144 // [, line 212
1145 env.ket = env.cursor;
1146 // literal, line 212
1147 if !env.eq_s_b(&"\u{0BC1}\u{0BAE}\u{0BCD}") {
1148 return false;
1149 }
1150 // ], line 212
1151 env.bra = env.cursor;
1152 // <-, line 212
1153 if !env.slice_from("\u{0BCD}") {
1154 return false;
1155 }
1156 // (, line 213
1157 // set found_a_match, line 213
1158 context.b_found_a_match = true;
1159 env.cursor = env.limit_backward;
1160 // do, line 215
1161 let v_1 = env.cursor;
1162 'lab0: loop {
1163 // call fix_ending, line 215
1164 if !r_fix_ending(env, context) {
1165 break 'lab0;
1166 }
1167 break 'lab0;
1168 }
1169 env.cursor = v_1;
1170 return true;
1171 }
1172
r_remove_common_word_endings(env: &mut SnowballEnv, context: &mut Context) -> bool1173 fn r_remove_common_word_endings(env: &mut SnowballEnv, context: &mut Context) -> bool {
1174 // (, line 218
1175 // unset found_a_match, line 222
1176 context.b_found_a_match = false;
1177 // call has_min_length, line 223
1178 if !r_has_min_length(env, context) {
1179 return false;
1180 }
1181 // backwards, line 224
1182 env.limit_backward = env.cursor;
1183 env.cursor = env.limit;
1184 // (, line 224
1185 // or, line 241
1186 'lab0: loop {
1187 let v_1 = env.limit - env.cursor;
1188 'lab1: loop {
1189 // test, line 225
1190 let v_2 = env.limit - env.cursor;
1191 // (, line 225
1192 // [, line 225
1193 env.ket = env.cursor;
1194 // or, line 225
1195 'lab2: loop {
1196 let v_3 = env.limit - env.cursor;
1197 'lab3: loop {
1198 // literal, line 225
1199 if !env.eq_s_b(&"\u{0BC1}\u{0B9F}\u{0BA9}\u{0BCD}") {
1200 break 'lab3;
1201 }
1202 break 'lab2;
1203 }
1204 env.cursor = env.limit - v_3;
1205 'lab4: loop {
1206 // literal, line 226
1207 if !env.eq_s_b(&"\u{0BBF}\u{0BB2}\u{0BCD}\u{0BB2}\u{0BC8}") {
1208 break 'lab4;
1209 }
1210 break 'lab2;
1211 }
1212 env.cursor = env.limit - v_3;
1213 'lab5: loop {
1214 // literal, line 227
1215 if !env.eq_s_b(&"\u{0BBF}\u{0B9F}\u{0BAE}\u{0BCD}") {
1216 break 'lab5;
1217 }
1218 break 'lab2;
1219 }
1220 env.cursor = env.limit - v_3;
1221 'lab6: loop {
1222 // literal, line 228
1223 if !env.eq_s_b(&"\u{0BBF}\u{0BA9}\u{0BCD}\u{0BB1}\u{0BBF}") {
1224 break 'lab6;
1225 }
1226 break 'lab2;
1227 }
1228 env.cursor = env.limit - v_3;
1229 'lab7: loop {
1230 // literal, line 229
1231 if !env.eq_s_b(&"\u{0BBE}\u{0B95}\u{0BBF}") {
1232 break 'lab7;
1233 }
1234 break 'lab2;
1235 }
1236 env.cursor = env.limit - v_3;
1237 'lab8: loop {
1238 // literal, line 230
1239 if !env.eq_s_b(&"\u{0BBE}\u{0B95}\u{0BBF}\u{0BAF}") {
1240 break 'lab8;
1241 }
1242 break 'lab2;
1243 }
1244 env.cursor = env.limit - v_3;
1245 'lab9: loop {
1246 // literal, line 231
1247 if !env.eq_s_b(&"\u{0BC6}\u{0BA9}\u{0BCD}\u{0BB1}\u{0BC1}") {
1248 break 'lab9;
1249 }
1250 break 'lab2;
1251 }
1252 env.cursor = env.limit - v_3;
1253 'lab10: loop {
1254 // literal, line 232
1255 if !env.eq_s_b(&"\u{0BC1}\u{0BB3}\u{0BCD}\u{0BB3}") {
1256 break 'lab10;
1257 }
1258 break 'lab2;
1259 }
1260 env.cursor = env.limit - v_3;
1261 'lab11: loop {
1262 // literal, line 233
1263 if !env.eq_s_b(&"\u{0BC1}\u{0B9F}\u{0BC8}\u{0BAF}") {
1264 break 'lab11;
1265 }
1266 break 'lab2;
1267 }
1268 env.cursor = env.limit - v_3;
1269 'lab12: loop {
1270 // literal, line 234
1271 if !env.eq_s_b(&"\u{0BC1}\u{0B9F}\u{0BC8}") {
1272 break 'lab12;
1273 }
1274 break 'lab2;
1275 }
1276 env.cursor = env.limit - v_3;
1277 'lab13: loop {
1278 // literal, line 235
1279 if !env.eq_s_b(&"\u{0BC6}\u{0BA9}\u{0BC1}\u{0BAE}\u{0BCD}") {
1280 break 'lab13;
1281 }
1282 break 'lab2;
1283 }
1284 env.cursor = env.limit - v_3;
1285 'lab14: loop {
1286 // (, line 236
1287 // literal, line 236
1288 if !env.eq_s_b(&"\u{0BB2}\u{0BCD}\u{0BB2}") {
1289 break 'lab14;
1290 }
1291 // test, line 236
1292 let v_4 = env.limit - env.cursor;
1293 // (, line 236
1294 // not, line 236
1295 let v_5 = env.limit - env.cursor;
1296 'lab15: loop {
1297 // among, line 236
1298 if env.find_among_b(A_16, context) == 0 {
1299 break 'lab15;
1300 }
1301 break 'lab14;
1302 }
1303 env.cursor = env.limit - v_5;
1304 env.cursor = env.limit - v_4;
1305 break 'lab2;
1306 }
1307 env.cursor = env.limit - v_3;
1308 'lab16: loop {
1309 // literal, line 237
1310 if !env.eq_s_b(&"\u{0BC6}\u{0BA9}") {
1311 break 'lab16;
1312 }
1313 break 'lab2;
1314 }
1315 env.cursor = env.limit - v_3;
1316 // literal, line 238
1317 if !env.eq_s_b(&"\u{0BBE}\u{0B95}\u{0BBF}") {
1318 break 'lab1;
1319 }
1320 break 'lab2;
1321 }
1322 // ], line 238
1323 env.bra = env.cursor;
1324 // <-, line 238
1325 if !env.slice_from("\u{0BCD}") {
1326 return false;
1327 }
1328 // (, line 239
1329 // set found_a_match, line 239
1330 context.b_found_a_match = true;
1331 env.cursor = env.limit - v_2;
1332 break 'lab0;
1333 }
1334 env.cursor = env.limit - v_1;
1335 // test, line 242
1336 let v_6 = env.limit - env.cursor;
1337 // (, line 242
1338 // [, line 242
1339 env.ket = env.cursor;
1340 // among, line 242
1341 if env.find_among_b(A_17, context) == 0 {
1342 return false;
1343 }
1344 // ], line 255
1345 env.bra = env.cursor;
1346 // delete, line 255
1347 if !env.slice_del() {
1348 return false;
1349 }
1350 // (, line 256
1351 // set found_a_match, line 256
1352 context.b_found_a_match = true;
1353 env.cursor = env.limit - v_6;
1354 break 'lab0;
1355 }
1356 env.cursor = env.limit_backward;
1357 // do, line 259
1358 let v_7 = env.cursor;
1359 'lab17: loop {
1360 // call fix_endings, line 259
1361 if !r_fix_endings(env, context) {
1362 break 'lab17;
1363 }
1364 break 'lab17;
1365 }
1366 env.cursor = v_7;
1367 return true;
1368 }
1369
r_remove_vetrumai_urupukal(env: &mut SnowballEnv, context: &mut Context) -> bool1370 fn r_remove_vetrumai_urupukal(env: &mut SnowballEnv, context: &mut Context) -> bool {
1371 // (, line 262
1372 // unset found_a_match, line 263
1373 context.b_found_a_match = false;
1374 // unset found_vetrumai_urupu, line 264
1375 context.b_found_vetrumai_urupu = false;
1376 // call has_min_length, line 265
1377 if !r_has_min_length(env, context) {
1378 return false;
1379 }
1380 // backwards, line 266
1381 env.limit_backward = env.cursor;
1382 env.cursor = env.limit;
1383 // (, line 266
1384 // (, line 267
1385 // or, line 269
1386 'lab0: loop {
1387 let v_1 = env.limit - env.cursor;
1388 'lab1: loop {
1389 // test, line 268
1390 let v_2 = env.limit - env.cursor;
1391 // (, line 268
1392 // [, line 268
1393 env.ket = env.cursor;
1394 // literal, line 268
1395 if !env.eq_s_b(&"\u{0BA9}\u{0BC8}") {
1396 break 'lab1;
1397 }
1398 // ], line 268
1399 env.bra = env.cursor;
1400 // delete, line 268
1401 if !env.slice_del() {
1402 return false;
1403 }
1404 env.cursor = env.limit - v_2;
1405 break 'lab0;
1406 }
1407 env.cursor = env.limit - v_1;
1408 'lab2: loop {
1409 // test, line 270
1410 let v_3 = env.limit - env.cursor;
1411 // (, line 270
1412 // [, line 270
1413 env.ket = env.cursor;
1414 // or, line 271
1415 'lab3: loop {
1416 let v_4 = env.limit - env.cursor;
1417 'lab4: loop {
1418 // (, line 270
1419 // or, line 270
1420 'lab5: loop {
1421 let v_5 = env.limit - env.cursor;
1422 'lab6: loop {
1423 // literal, line 270
1424 if !env.eq_s_b(&"\u{0BBF}\u{0BA9}\u{0BC8}") {
1425 break 'lab6;
1426 }
1427 break 'lab5;
1428 }
1429 env.cursor = env.limit - v_5;
1430 // literal, line 271
1431 if !env.eq_s_b(&"\u{0BC8}") {
1432 break 'lab4;
1433 }
1434 break 'lab5;
1435 }
1436 // (, line 271
1437 // test, line 271
1438 let v_6 = env.limit - env.cursor;
1439 // not, line 271
1440 let v_7 = env.limit - env.cursor;
1441 'lab7: loop {
1442 // among, line 271
1443 if env.find_among_b(A_18, context) == 0 {
1444 break 'lab7;
1445 }
1446 break 'lab4;
1447 }
1448 env.cursor = env.limit - v_7;
1449 env.cursor = env.limit - v_6;
1450 break 'lab3;
1451 }
1452 env.cursor = env.limit - v_4;
1453 // (, line 272
1454 // literal, line 272
1455 if !env.eq_s_b(&"\u{0BC8}") {
1456 break 'lab2;
1457 }
1458 // (, line 272
1459 // test, line 272
1460 let v_8 = env.limit - env.cursor;
1461 // (, line 272
1462 // among, line 272
1463 if env.find_among_b(A_19, context) == 0 {
1464 break 'lab2;
1465 }
1466 // literal, line 272
1467 if !env.eq_s_b(&"\u{0BCD}") {
1468 break 'lab2;
1469 }
1470 env.cursor = env.limit - v_8;
1471 break 'lab3;
1472 }
1473 // ], line 273
1474 env.bra = env.cursor;
1475 // <-, line 273
1476 if !env.slice_from("\u{0BCD}") {
1477 return false;
1478 }
1479 env.cursor = env.limit - v_3;
1480 break 'lab0;
1481 }
1482 env.cursor = env.limit - v_1;
1483 'lab8: loop {
1484 // test, line 276
1485 let v_9 = env.limit - env.cursor;
1486 // (, line 276
1487 // [, line 276
1488 env.ket = env.cursor;
1489 // or, line 277
1490 'lab9: loop {
1491 let v_10 = env.limit - env.cursor;
1492 'lab10: loop {
1493 // literal, line 277
1494 if !env.eq_s_b(&"\u{0BCA}\u{0B9F}\u{0BC1}") {
1495 break 'lab10;
1496 }
1497 break 'lab9;
1498 }
1499 env.cursor = env.limit - v_10;
1500 'lab11: loop {
1501 // literal, line 278
1502 if !env.eq_s_b(&"\u{0BCB}\u{0B9F}\u{0BC1}") {
1503 break 'lab11;
1504 }
1505 break 'lab9;
1506 }
1507 env.cursor = env.limit - v_10;
1508 'lab12: loop {
1509 // literal, line 279
1510 if !env.eq_s_b(&"\u{0BBF}\u{0BB2}\u{0BCD}") {
1511 break 'lab12;
1512 }
1513 break 'lab9;
1514 }
1515 env.cursor = env.limit - v_10;
1516 'lab13: loop {
1517 // literal, line 280
1518 if !env.eq_s_b(&"\u{0BBF}\u{0BB1}\u{0BCD}") {
1519 break 'lab13;
1520 }
1521 break 'lab9;
1522 }
1523 env.cursor = env.limit - v_10;
1524 'lab14: loop {
1525 // (, line 281
1526 // literal, line 281
1527 if !env.eq_s_b(&"\u{0BBF}\u{0BA9}\u{0BCD}") {
1528 break 'lab14;
1529 }
1530 // (, line 281
1531 // test, line 281
1532 let v_11 = env.limit - env.cursor;
1533 // not, line 281
1534 let v_12 = env.limit - env.cursor;
1535 'lab15: loop {
1536 // literal, line 281
1537 if !env.eq_s_b(&"\u{0BAE}") {
1538 break 'lab15;
1539 }
1540 break 'lab14;
1541 }
1542 env.cursor = env.limit - v_12;
1543 env.cursor = env.limit - v_11;
1544 break 'lab9;
1545 }
1546 env.cursor = env.limit - v_10;
1547 'lab16: loop {
1548 // literal, line 282
1549 if !env.eq_s_b(&"\u{0BBF}\u{0BA9}\u{0BCD}\u{0BB1}\u{0BC1}") {
1550 break 'lab16;
1551 }
1552 break 'lab9;
1553 }
1554 env.cursor = env.limit - v_10;
1555 'lab17: loop {
1556 // literal, line 283
1557 if !env.eq_s_b(&"\u{0BBF}\u{0BB0}\u{0BC1}\u{0BA8}\u{0BCD}\u{0BA4}\u{0BC1}") {
1558 break 'lab17;
1559 }
1560 break 'lab9;
1561 }
1562 env.cursor = env.limit - v_10;
1563 'lab18: loop {
1564 // literal, line 284
1565 if !env.eq_s_b(&"\u{0BB5}\u{0BBF}\u{0B9F}") {
1566 break 'lab18;
1567 }
1568 break 'lab9;
1569 }
1570 env.cursor = env.limit - v_10;
1571 'lab19: loop {
1572 // (, line 285
1573 if !(context.i_length >= 7){
1574 break 'lab19;
1575 }
1576 // literal, line 285
1577 if !env.eq_s_b(&"\u{0BBF}\u{0B9F}\u{0BAE}\u{0BCD}") {
1578 break 'lab19;
1579 }
1580 break 'lab9;
1581 }
1582 env.cursor = env.limit - v_10;
1583 'lab20: loop {
1584 // literal, line 286
1585 if !env.eq_s_b(&"\u{0BBE}\u{0BB2}\u{0BCD}") {
1586 break 'lab20;
1587 }
1588 break 'lab9;
1589 }
1590 env.cursor = env.limit - v_10;
1591 'lab21: loop {
1592 // literal, line 287
1593 if !env.eq_s_b(&"\u{0BC1}\u{0B9F}\u{0BC8}") {
1594 break 'lab21;
1595 }
1596 break 'lab9;
1597 }
1598 env.cursor = env.limit - v_10;
1599 'lab22: loop {
1600 // literal, line 288
1601 if !env.eq_s_b(&"\u{0BBE}\u{0BAE}\u{0BB2}\u{0BCD}") {
1602 break 'lab22;
1603 }
1604 break 'lab9;
1605 }
1606 env.cursor = env.limit - v_10;
1607 'lab23: loop {
1608 // (, line 289
1609 // literal, line 289
1610 if !env.eq_s_b(&"\u{0BB2}\u{0BCD}") {
1611 break 'lab23;
1612 }
1613 // (, line 289
1614 // test, line 289
1615 let v_13 = env.limit - env.cursor;
1616 // not, line 289
1617 let v_14 = env.limit - env.cursor;
1618 'lab24: loop {
1619 // among, line 289
1620 if env.find_among_b(A_20, context) == 0 {
1621 break 'lab24;
1622 }
1623 break 'lab23;
1624 }
1625 env.cursor = env.limit - v_14;
1626 env.cursor = env.limit - v_13;
1627 break 'lab9;
1628 }
1629 env.cursor = env.limit - v_10;
1630 // literal, line 290
1631 if !env.eq_s_b(&"\u{0BC1}\u{0BB3}\u{0BCD}") {
1632 break 'lab8;
1633 }
1634 break 'lab9;
1635 }
1636 // ], line 291
1637 env.bra = env.cursor;
1638 // <-, line 291
1639 if !env.slice_from("\u{0BCD}") {
1640 return false;
1641 }
1642 env.cursor = env.limit - v_9;
1643 break 'lab0;
1644 }
1645 env.cursor = env.limit - v_1;
1646 'lab25: loop {
1647 // test, line 294
1648 let v_15 = env.limit - env.cursor;
1649 // (, line 294
1650 // [, line 294
1651 env.ket = env.cursor;
1652 // or, line 295
1653 'lab26: loop {
1654 let v_16 = env.limit - env.cursor;
1655 'lab27: loop {
1656 // literal, line 295
1657 if !env.eq_s_b(&"\u{0B95}\u{0BA3}\u{0BCD}") {
1658 break 'lab27;
1659 }
1660 break 'lab26;
1661 }
1662 env.cursor = env.limit - v_16;
1663 'lab28: loop {
1664 // literal, line 296
1665 if !env.eq_s_b(&"\u{0BAE}\u{0BC1}\u{0BA9}\u{0BCD}") {
1666 break 'lab28;
1667 }
1668 break 'lab26;
1669 }
1670 env.cursor = env.limit - v_16;
1671 'lab29: loop {
1672 // literal, line 297
1673 if !env.eq_s_b(&"\u{0BAE}\u{0BC7}\u{0BB2}\u{0BCD}") {
1674 break 'lab29;
1675 }
1676 break 'lab26;
1677 }
1678 env.cursor = env.limit - v_16;
1679 'lab30: loop {
1680 // literal, line 298
1681 if !env.eq_s_b(&"\u{0BAE}\u{0BC7}\u{0BB1}\u{0BCD}") {
1682 break 'lab30;
1683 }
1684 break 'lab26;
1685 }
1686 env.cursor = env.limit - v_16;
1687 'lab31: loop {
1688 // literal, line 299
1689 if !env.eq_s_b(&"\u{0B95}\u{0BC0}\u{0BB4}\u{0BCD}") {
1690 break 'lab31;
1691 }
1692 break 'lab26;
1693 }
1694 env.cursor = env.limit - v_16;
1695 'lab32: loop {
1696 // literal, line 300
1697 if !env.eq_s_b(&"\u{0BAA}\u{0BBF}\u{0BA9}\u{0BCD}") {
1698 break 'lab32;
1699 }
1700 break 'lab26;
1701 }
1702 env.cursor = env.limit - v_16;
1703 // (, line 301
1704 // literal, line 301
1705 if !env.eq_s_b(&"\u{0BA4}\u{0BC1}") {
1706 break 'lab25;
1707 }
1708 // (, line 301
1709 // test, line 301
1710 let v_17 = env.limit - env.cursor;
1711 // not, line 301
1712 let v_18 = env.limit - env.cursor;
1713 'lab33: loop {
1714 // among, line 301
1715 if env.find_among_b(A_21, context) == 0 {
1716 break 'lab33;
1717 }
1718 break 'lab25;
1719 }
1720 env.cursor = env.limit - v_18;
1721 env.cursor = env.limit - v_17;
1722 break 'lab26;
1723 }
1724 // ], line 302
1725 env.bra = env.cursor;
1726 // delete, line 302
1727 if !env.slice_del() {
1728 return false;
1729 }
1730 env.cursor = env.limit - v_15;
1731 break 'lab0;
1732 }
1733 env.cursor = env.limit - v_1;
1734 // test, line 305
1735 let v_19 = env.limit - env.cursor;
1736 // (, line 305
1737 // [, line 305
1738 env.ket = env.cursor;
1739 // literal, line 305
1740 if !env.eq_s_b(&"\u{0BC0}") {
1741 return false;
1742 }
1743 // ], line 305
1744 env.bra = env.cursor;
1745 // <-, line 305
1746 if !env.slice_from("\u{0BBF}") {
1747 return false;
1748 }
1749 env.cursor = env.limit - v_19;
1750 break 'lab0;
1751 }
1752 // (, line 307
1753 // set found_a_match, line 307
1754 context.b_found_a_match = true;
1755 // (, line 308
1756 // set found_vetrumai_urupu, line 308
1757 context.b_found_vetrumai_urupu = true;
1758 // do, line 309
1759 let v_20 = env.limit - env.cursor;
1760 'lab34: loop {
1761 // (, line 309
1762 // [, line 309
1763 env.ket = env.cursor;
1764 // literal, line 309
1765 if !env.eq_s_b(&"\u{0BBF}\u{0BA9}\u{0BCD}") {
1766 break 'lab34;
1767 }
1768 // ], line 309
1769 env.bra = env.cursor;
1770 // <-, line 309
1771 if !env.slice_from("\u{0BCD}") {
1772 return false;
1773 }
1774 break 'lab34;
1775 }
1776 env.cursor = env.limit - v_20;
1777 env.cursor = env.limit_backward;
1778 // do, line 311
1779 let v_21 = env.cursor;
1780 'lab35: loop {
1781 // call fix_endings, line 311
1782 if !r_fix_endings(env, context) {
1783 break 'lab35;
1784 }
1785 break 'lab35;
1786 }
1787 env.cursor = v_21;
1788 return true;
1789 }
1790
r_remove_tense_suffixes(env: &mut SnowballEnv, context: &mut Context) -> bool1791 fn r_remove_tense_suffixes(env: &mut SnowballEnv, context: &mut Context) -> bool {
1792 // (, line 314
1793 // set found_a_match, line 315
1794 context.b_found_a_match = true;
1795 // repeat, line 316
1796 'replab0: loop{
1797 let v_1 = env.cursor;
1798 'lab1: for _ in 0..1 {
1799 // (, line 316
1800 // Boolean test found_a_match, line 316
1801 if !context.b_found_a_match {
1802 break 'lab1;
1803 }
1804 // (, line 316
1805 // do, line 316
1806 let v_2 = env.cursor;
1807 'lab2: loop {
1808 // call remove_tense_suffix, line 316
1809 if !r_remove_tense_suffix(env, context) {
1810 break 'lab2;
1811 }
1812 break 'lab2;
1813 }
1814 env.cursor = v_2;
1815 continue 'replab0;
1816 }
1817 env.cursor = v_1;
1818 break 'replab0;
1819 }
1820 return true;
1821 }
1822
r_remove_tense_suffix(env: &mut SnowballEnv, context: &mut Context) -> bool1823 fn r_remove_tense_suffix(env: &mut SnowballEnv, context: &mut Context) -> bool {
1824 // (, line 319
1825 // unset found_a_match, line 320
1826 context.b_found_a_match = false;
1827 // call has_min_length, line 321
1828 if !r_has_min_length(env, context) {
1829 return false;
1830 }
1831 // backwards, line 322
1832 env.limit_backward = env.cursor;
1833 env.cursor = env.limit;
1834 // (, line 322
1835 // do, line 323
1836 let v_1 = env.limit - env.cursor;
1837 'lab0: loop {
1838 // (, line 323
1839 // or, line 330
1840 'lab1: loop {
1841 let v_2 = env.limit - env.cursor;
1842 'lab2: loop {
1843 // test, line 324
1844 let v_3 = env.limit - env.cursor;
1845 // (, line 324
1846 // [, line 324
1847 env.ket = env.cursor;
1848 // among, line 324
1849 if env.find_among_b(A_22, context) == 0 {
1850 break 'lab2;
1851 }
1852 // ], line 327
1853 env.bra = env.cursor;
1854 // delete, line 327
1855 if !env.slice_del() {
1856 return false;
1857 }
1858 // (, line 328
1859 // set found_a_match, line 328
1860 context.b_found_a_match = true;
1861 env.cursor = env.limit - v_3;
1862 break 'lab1;
1863 }
1864 env.cursor = env.limit - v_2;
1865 'lab3: loop {
1866 // test, line 331
1867 let v_4 = env.limit - env.cursor;
1868 // (, line 331
1869 // [, line 331
1870 env.ket = env.cursor;
1871 // or, line 332
1872 'lab4: loop {
1873 let v_5 = env.limit - env.cursor;
1874 'lab5: loop {
1875 // literal, line 332
1876 if !env.eq_s_b(&"\u{0BAE}\u{0BBE}\u{0BB0}\u{0BCD}") {
1877 break 'lab5;
1878 }
1879 break 'lab4;
1880 }
1881 env.cursor = env.limit - v_5;
1882 'lab6: loop {
1883 // literal, line 333
1884 if !env.eq_s_b(&"\u{0BAE}\u{0BBF}\u{0BA9}\u{0BCD}") {
1885 break 'lab6;
1886 }
1887 break 'lab4;
1888 }
1889 env.cursor = env.limit - v_5;
1890 'lab7: loop {
1891 // literal, line 334
1892 if !env.eq_s_b(&"\u{0BA9}\u{0BA9}\u{0BCD}") {
1893 break 'lab7;
1894 }
1895 break 'lab4;
1896 }
1897 env.cursor = env.limit - v_5;
1898 'lab8: loop {
1899 // literal, line 335
1900 if !env.eq_s_b(&"\u{0BA9}\u{0BBE}\u{0BA9}\u{0BCD}") {
1901 break 'lab8;
1902 }
1903 break 'lab4;
1904 }
1905 env.cursor = env.limit - v_5;
1906 'lab9: loop {
1907 // literal, line 336
1908 if !env.eq_s_b(&"\u{0BA9}\u{0BBE}\u{0BB3}\u{0BCD}") {
1909 break 'lab9;
1910 }
1911 break 'lab4;
1912 }
1913 env.cursor = env.limit - v_5;
1914 'lab10: loop {
1915 // literal, line 337
1916 if !env.eq_s_b(&"\u{0BA9}\u{0BBE}\u{0BB0}\u{0BCD}") {
1917 break 'lab10;
1918 }
1919 break 'lab4;
1920 }
1921 env.cursor = env.limit - v_5;
1922 'lab11: loop {
1923 // (, line 338
1924 // literal, line 338
1925 if !env.eq_s_b(&"\u{0BB5}\u{0BA9}\u{0BCD}") {
1926 break 'lab11;
1927 }
1928 // test, line 338
1929 let v_6 = env.limit - env.cursor;
1930 // (, line 338
1931 // not, line 338
1932 let v_7 = env.limit - env.cursor;
1933 'lab12: loop {
1934 // among, line 338
1935 if env.find_among_b(A_23, context) == 0 {
1936 break 'lab12;
1937 }
1938 break 'lab11;
1939 }
1940 env.cursor = env.limit - v_7;
1941 env.cursor = env.limit - v_6;
1942 break 'lab4;
1943 }
1944 env.cursor = env.limit - v_5;
1945 'lab13: loop {
1946 // literal, line 339
1947 if !env.eq_s_b(&"\u{0BA9}\u{0BB3}\u{0BCD}") {
1948 break 'lab13;
1949 }
1950 break 'lab4;
1951 }
1952 env.cursor = env.limit - v_5;
1953 'lab14: loop {
1954 // literal, line 340
1955 if !env.eq_s_b(&"\u{0BB5}\u{0BB3}\u{0BCD}") {
1956 break 'lab14;
1957 }
1958 break 'lab4;
1959 }
1960 env.cursor = env.limit - v_5;
1961 'lab15: loop {
1962 // literal, line 341
1963 if !env.eq_s_b(&"\u{0BA9}\u{0BB0}\u{0BCD}") {
1964 break 'lab15;
1965 }
1966 break 'lab4;
1967 }
1968 env.cursor = env.limit - v_5;
1969 'lab16: loop {
1970 // literal, line 342
1971 if !env.eq_s_b(&"\u{0BB5}\u{0BB0}\u{0BCD}") {
1972 break 'lab16;
1973 }
1974 break 'lab4;
1975 }
1976 env.cursor = env.limit - v_5;
1977 'lab17: loop {
1978 // literal, line 343
1979 if !env.eq_s_b(&"\u{0BA9}") {
1980 break 'lab17;
1981 }
1982 break 'lab4;
1983 }
1984 env.cursor = env.limit - v_5;
1985 'lab18: loop {
1986 // literal, line 343
1987 if !env.eq_s_b(&"\u{0BAA}") {
1988 break 'lab18;
1989 }
1990 break 'lab4;
1991 }
1992 env.cursor = env.limit - v_5;
1993 'lab19: loop {
1994 // literal, line 343
1995 if !env.eq_s_b(&"\u{0B95}") {
1996 break 'lab19;
1997 }
1998 break 'lab4;
1999 }
2000 env.cursor = env.limit - v_5;
2001 'lab20: loop {
2002 // literal, line 343
2003 if !env.eq_s_b(&"\u{0BA4}") {
2004 break 'lab20;
2005 }
2006 break 'lab4;
2007 }
2008 env.cursor = env.limit - v_5;
2009 'lab21: loop {
2010 // literal, line 343
2011 if !env.eq_s_b(&"\u{0BAF}") {
2012 break 'lab21;
2013 }
2014 break 'lab4;
2015 }
2016 env.cursor = env.limit - v_5;
2017 'lab22: loop {
2018 // literal, line 344
2019 if !env.eq_s_b(&"\u{0BAA}\u{0BA9}\u{0BCD}") {
2020 break 'lab22;
2021 }
2022 break 'lab4;
2023 }
2024 env.cursor = env.limit - v_5;
2025 'lab23: loop {
2026 // literal, line 345
2027 if !env.eq_s_b(&"\u{0BAA}\u{0BB3}\u{0BCD}") {
2028 break 'lab23;
2029 }
2030 break 'lab4;
2031 }
2032 env.cursor = env.limit - v_5;
2033 'lab24: loop {
2034 // literal, line 346
2035 if !env.eq_s_b(&"\u{0BAA}\u{0BB0}\u{0BCD}") {
2036 break 'lab24;
2037 }
2038 break 'lab4;
2039 }
2040 env.cursor = env.limit - v_5;
2041 'lab25: loop {
2042 // (, line 347
2043 // literal, line 347
2044 if !env.eq_s_b(&"\u{0BA4}\u{0BC1}") {
2045 break 'lab25;
2046 }
2047 // (, line 347
2048 // test, line 347
2049 let v_8 = env.limit - env.cursor;
2050 // not, line 347
2051 let v_9 = env.limit - env.cursor;
2052 'lab26: loop {
2053 // among, line 347
2054 if env.find_among_b(A_24, context) == 0 {
2055 break 'lab26;
2056 }
2057 break 'lab25;
2058 }
2059 env.cursor = env.limit - v_9;
2060 env.cursor = env.limit - v_8;
2061 break 'lab4;
2062 }
2063 env.cursor = env.limit - v_5;
2064 'lab27: loop {
2065 // literal, line 348
2066 if !env.eq_s_b(&"\u{0BBF}\u{0BB1}\u{0BCD}\u{0BB1}\u{0BC1}") {
2067 break 'lab27;
2068 }
2069 break 'lab4;
2070 }
2071 env.cursor = env.limit - v_5;
2072 'lab28: loop {
2073 // literal, line 349
2074 if !env.eq_s_b(&"\u{0BAA}\u{0BAE}\u{0BCD}") {
2075 break 'lab28;
2076 }
2077 break 'lab4;
2078 }
2079 env.cursor = env.limit - v_5;
2080 'lab29: loop {
2081 // literal, line 350
2082 if !env.eq_s_b(&"\u{0BA9}\u{0BAE}\u{0BCD}") {
2083 break 'lab29;
2084 }
2085 break 'lab4;
2086 }
2087 env.cursor = env.limit - v_5;
2088 'lab30: loop {
2089 // literal, line 351
2090 if !env.eq_s_b(&"\u{0BA4}\u{0BC1}\u{0BAE}\u{0BCD}") {
2091 break 'lab30;
2092 }
2093 break 'lab4;
2094 }
2095 env.cursor = env.limit - v_5;
2096 'lab31: loop {
2097 // literal, line 352
2098 if !env.eq_s_b(&"\u{0BB1}\u{0BC1}\u{0BAE}\u{0BCD}") {
2099 break 'lab31;
2100 }
2101 break 'lab4;
2102 }
2103 env.cursor = env.limit - v_5;
2104 'lab32: loop {
2105 // literal, line 353
2106 if !env.eq_s_b(&"\u{0B95}\u{0BC1}\u{0BAE}\u{0BCD}") {
2107 break 'lab32;
2108 }
2109 break 'lab4;
2110 }
2111 env.cursor = env.limit - v_5;
2112 'lab33: loop {
2113 // literal, line 354
2114 if !env.eq_s_b(&"\u{0BA9}\u{0BC6}\u{0BA9}\u{0BCD}") {
2115 break 'lab33;
2116 }
2117 break 'lab4;
2118 }
2119 env.cursor = env.limit - v_5;
2120 'lab34: loop {
2121 // literal, line 355
2122 if !env.eq_s_b(&"\u{0BA9}\u{0BC8}") {
2123 break 'lab34;
2124 }
2125 break 'lab4;
2126 }
2127 env.cursor = env.limit - v_5;
2128 // literal, line 356
2129 if !env.eq_s_b(&"\u{0BB5}\u{0BC8}") {
2130 break 'lab3;
2131 }
2132 break 'lab4;
2133 }
2134 // ], line 357
2135 env.bra = env.cursor;
2136 // delete, line 357
2137 if !env.slice_del() {
2138 return false;
2139 }
2140 // (, line 358
2141 // set found_a_match, line 358
2142 context.b_found_a_match = true;
2143 env.cursor = env.limit - v_4;
2144 break 'lab1;
2145 }
2146 env.cursor = env.limit - v_2;
2147 'lab35: loop {
2148 // test, line 361
2149 let v_10 = env.limit - env.cursor;
2150 // (, line 361
2151 // [, line 361
2152 env.ket = env.cursor;
2153 // or, line 362
2154 'lab36: loop {
2155 let v_11 = env.limit - env.cursor;
2156 'lab37: loop {
2157 // (, line 362
2158 // literal, line 362
2159 if !env.eq_s_b(&"\u{0BBE}\u{0BA9}\u{0BCD}") {
2160 break 'lab37;
2161 }
2162 // test, line 362
2163 let v_12 = env.limit - env.cursor;
2164 // (, line 362
2165 // not, line 362
2166 let v_13 = env.limit - env.cursor;
2167 'lab38: loop {
2168 // literal, line 362
2169 if !env.eq_s_b(&"\u{0B9A}") {
2170 break 'lab38;
2171 }
2172 break 'lab37;
2173 }
2174 env.cursor = env.limit - v_13;
2175 env.cursor = env.limit - v_12;
2176 break 'lab36;
2177 }
2178 env.cursor = env.limit - v_11;
2179 'lab39: loop {
2180 // literal, line 363
2181 if !env.eq_s_b(&"\u{0BBE}\u{0BB3}\u{0BCD}") {
2182 break 'lab39;
2183 }
2184 break 'lab36;
2185 }
2186 env.cursor = env.limit - v_11;
2187 'lab40: loop {
2188 // literal, line 364
2189 if !env.eq_s_b(&"\u{0BBE}\u{0BB0}\u{0BCD}") {
2190 break 'lab40;
2191 }
2192 break 'lab36;
2193 }
2194 env.cursor = env.limit - v_11;
2195 'lab41: loop {
2196 // literal, line 365
2197 if !env.eq_s_b(&"\u{0BC7}\u{0BA9}\u{0BCD}") {
2198 break 'lab41;
2199 }
2200 break 'lab36;
2201 }
2202 env.cursor = env.limit - v_11;
2203 'lab42: loop {
2204 // literal, line 366
2205 if !env.eq_s_b(&"\u{0BBE}") {
2206 break 'lab42;
2207 }
2208 break 'lab36;
2209 }
2210 env.cursor = env.limit - v_11;
2211 'lab43: loop {
2212 // literal, line 367
2213 if !env.eq_s_b(&"\u{0BBE}\u{0BAE}\u{0BCD}") {
2214 break 'lab43;
2215 }
2216 break 'lab36;
2217 }
2218 env.cursor = env.limit - v_11;
2219 'lab44: loop {
2220 // literal, line 368
2221 if !env.eq_s_b(&"\u{0BC6}\u{0BAE}\u{0BCD}") {
2222 break 'lab44;
2223 }
2224 break 'lab36;
2225 }
2226 env.cursor = env.limit - v_11;
2227 'lab45: loop {
2228 // literal, line 369
2229 if !env.eq_s_b(&"\u{0BC7}\u{0BAE}\u{0BCD}") {
2230 break 'lab45;
2231 }
2232 break 'lab36;
2233 }
2234 env.cursor = env.limit - v_11;
2235 'lab46: loop {
2236 // literal, line 370
2237 if !env.eq_s_b(&"\u{0BCB}\u{0BAE}\u{0BCD}") {
2238 break 'lab46;
2239 }
2240 break 'lab36;
2241 }
2242 env.cursor = env.limit - v_11;
2243 'lab47: loop {
2244 // literal, line 371
2245 if !env.eq_s_b(&"\u{0B95}\u{0BC1}\u{0BAE}\u{0BCD}") {
2246 break 'lab47;
2247 }
2248 break 'lab36;
2249 }
2250 env.cursor = env.limit - v_11;
2251 'lab48: loop {
2252 // literal, line 372
2253 if !env.eq_s_b(&"\u{0BA4}\u{0BC1}\u{0BAE}\u{0BCD}") {
2254 break 'lab48;
2255 }
2256 break 'lab36;
2257 }
2258 env.cursor = env.limit - v_11;
2259 'lab49: loop {
2260 // literal, line 373
2261 if !env.eq_s_b(&"\u{0B9F}\u{0BC1}\u{0BAE}\u{0BCD}") {
2262 break 'lab49;
2263 }
2264 break 'lab36;
2265 }
2266 env.cursor = env.limit - v_11;
2267 'lab50: loop {
2268 // literal, line 374
2269 if !env.eq_s_b(&"\u{0BB1}\u{0BC1}\u{0BAE}\u{0BCD}") {
2270 break 'lab50;
2271 }
2272 break 'lab36;
2273 }
2274 env.cursor = env.limit - v_11;
2275 'lab51: loop {
2276 // literal, line 375
2277 if !env.eq_s_b(&"\u{0BBE}\u{0BAF}\u{0BCD}") {
2278 break 'lab51;
2279 }
2280 break 'lab36;
2281 }
2282 env.cursor = env.limit - v_11;
2283 'lab52: loop {
2284 // literal, line 376
2285 if !env.eq_s_b(&"\u{0BA9}\u{0BC6}\u{0BA9}\u{0BCD}") {
2286 break 'lab52;
2287 }
2288 break 'lab36;
2289 }
2290 env.cursor = env.limit - v_11;
2291 'lab53: loop {
2292 // literal, line 377
2293 if !env.eq_s_b(&"\u{0BA9}\u{0BBF}\u{0BB0}\u{0BCD}") {
2294 break 'lab53;
2295 }
2296 break 'lab36;
2297 }
2298 env.cursor = env.limit - v_11;
2299 'lab54: loop {
2300 // literal, line 378
2301 if !env.eq_s_b(&"\u{0BC0}\u{0BB0}\u{0BCD}") {
2302 break 'lab54;
2303 }
2304 break 'lab36;
2305 }
2306 env.cursor = env.limit - v_11;
2307 // literal, line 379
2308 if !env.eq_s_b(&"\u{0BC0}\u{0BAF}\u{0BB0}\u{0BCD}") {
2309 break 'lab35;
2310 }
2311 break 'lab36;
2312 }
2313 // ], line 380
2314 env.bra = env.cursor;
2315 // <-, line 380
2316 if !env.slice_from("\u{0BCD}") {
2317 return false;
2318 }
2319 // (, line 381
2320 // set found_a_match, line 381
2321 context.b_found_a_match = true;
2322 env.cursor = env.limit - v_10;
2323 break 'lab1;
2324 }
2325 env.cursor = env.limit - v_2;
2326 // test, line 384
2327 let v_14 = env.limit - env.cursor;
2328 // (, line 384
2329 // (, line 384
2330 // [, line 384
2331 env.ket = env.cursor;
2332 // or, line 384
2333 'lab55: loop {
2334 let v_15 = env.limit - env.cursor;
2335 'lab56: loop {
2336 // literal, line 384
2337 if !env.eq_s_b(&"\u{0B95}\u{0BC1}") {
2338 break 'lab56;
2339 }
2340 break 'lab55;
2341 }
2342 env.cursor = env.limit - v_15;
2343 // literal, line 384
2344 if !env.eq_s_b(&"\u{0BA4}\u{0BC1}") {
2345 break 'lab0;
2346 }
2347 break 'lab55;
2348 }
2349 // (, line 384
2350 // test, line 384
2351 let v_16 = env.limit - env.cursor;
2352 // literal, line 384
2353 if !env.eq_s_b(&"\u{0BCD}") {
2354 break 'lab0;
2355 }
2356 env.cursor = env.limit - v_16;
2357 // ], line 384
2358 env.bra = env.cursor;
2359 // delete, line 384
2360 if !env.slice_del() {
2361 return false;
2362 }
2363 // (, line 385
2364 // set found_a_match, line 385
2365 context.b_found_a_match = true;
2366 env.cursor = env.limit - v_14;
2367 break 'lab1;
2368 }
2369 break 'lab0;
2370 }
2371 env.cursor = env.limit - v_1;
2372 // do, line 388
2373 let v_17 = env.limit - env.cursor;
2374 'lab57: loop {
2375 // (, line 388
2376 // [, line 388
2377 env.ket = env.cursor;
2378 // among, line 388
2379 if env.find_among_b(A_25, context) == 0 {
2380 break 'lab57;
2381 }
2382 // ], line 395
2383 env.bra = env.cursor;
2384 // delete, line 395
2385 if !env.slice_del() {
2386 return false;
2387 }
2388 // (, line 396
2389 // set found_a_match, line 396
2390 context.b_found_a_match = true;
2391 break 'lab57;
2392 }
2393 env.cursor = env.limit - v_17;
2394 env.cursor = env.limit_backward;
2395 // do, line 399
2396 let v_18 = env.cursor;
2397 'lab58: loop {
2398 // call fix_endings, line 399
2399 if !r_fix_endings(env, context) {
2400 break 'lab58;
2401 }
2402 break 'lab58;
2403 }
2404 env.cursor = v_18;
2405 return true;
2406 }
2407
stem(env: &mut SnowballEnv) -> bool2408 pub fn stem(env: &mut SnowballEnv) -> bool {
2409 let mut context = &mut Context {
2410 i_length: 0,
2411 b_found_wrong_ending: false,
2412 b_found_vetrumai_urupu: false,
2413 b_found_a_match: false,
2414 };
2415 // (, line 402
2416 // unset found_vetrumai_urupu, line 403
2417 context.b_found_vetrumai_urupu = false;
2418 // do, line 404
2419 let v_1 = env.cursor;
2420 'lab0: loop {
2421 // call fix_ending, line 404
2422 if !r_fix_ending(env, context) {
2423 break 'lab0;
2424 }
2425 break 'lab0;
2426 }
2427 env.cursor = v_1;
2428 // call has_min_length, line 405
2429 if !r_has_min_length(env, context) {
2430 return false;
2431 }
2432 // do, line 406
2433 let v_2 = env.cursor;
2434 'lab1: loop {
2435 // call remove_question_prefixes, line 406
2436 if !r_remove_question_prefixes(env, context) {
2437 break 'lab1;
2438 }
2439 break 'lab1;
2440 }
2441 env.cursor = v_2;
2442 // do, line 407
2443 let v_3 = env.cursor;
2444 'lab2: loop {
2445 // call remove_pronoun_prefixes, line 407
2446 if !r_remove_pronoun_prefixes(env, context) {
2447 break 'lab2;
2448 }
2449 break 'lab2;
2450 }
2451 env.cursor = v_3;
2452 // do, line 408
2453 let v_4 = env.cursor;
2454 'lab3: loop {
2455 // call remove_question_suffixes, line 408
2456 if !r_remove_question_suffixes(env, context) {
2457 break 'lab3;
2458 }
2459 break 'lab3;
2460 }
2461 env.cursor = v_4;
2462 // do, line 409
2463 let v_5 = env.cursor;
2464 'lab4: loop {
2465 // call remove_um, line 409
2466 if !r_remove_um(env, context) {
2467 break 'lab4;
2468 }
2469 break 'lab4;
2470 }
2471 env.cursor = v_5;
2472 // do, line 410
2473 let v_6 = env.cursor;
2474 'lab5: loop {
2475 // call remove_common_word_endings, line 410
2476 if !r_remove_common_word_endings(env, context) {
2477 break 'lab5;
2478 }
2479 break 'lab5;
2480 }
2481 env.cursor = v_6;
2482 // do, line 411
2483 let v_7 = env.cursor;
2484 'lab6: loop {
2485 // call remove_vetrumai_urupukal, line 411
2486 if !r_remove_vetrumai_urupukal(env, context) {
2487 break 'lab6;
2488 }
2489 break 'lab6;
2490 }
2491 env.cursor = v_7;
2492 // do, line 412
2493 let v_8 = env.cursor;
2494 'lab7: loop {
2495 // call remove_plural_suffix, line 412
2496 if !r_remove_plural_suffix(env, context) {
2497 break 'lab7;
2498 }
2499 break 'lab7;
2500 }
2501 env.cursor = v_8;
2502 // do, line 413
2503 let v_9 = env.cursor;
2504 'lab8: loop {
2505 // call remove_command_suffixes, line 413
2506 if !r_remove_command_suffixes(env, context) {
2507 break 'lab8;
2508 }
2509 break 'lab8;
2510 }
2511 env.cursor = v_9;
2512 // do, line 414
2513 let v_10 = env.cursor;
2514 'lab9: loop {
2515 // call remove_tense_suffixes, line 414
2516 if !r_remove_tense_suffixes(env, context) {
2517 break 'lab9;
2518 }
2519 break 'lab9;
2520 }
2521 env.cursor = v_10;
2522 return true;
2523 }
2524