Age Owner Branch data TLA Line data Source code
1 : : /* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
2 : :
3 : : #include "header.h"
4 : :
5 : : #ifdef __cplusplus
6 : : extern "C" {
7 : : #endif
8 : : extern int dutch_UTF_8_stem(struct SN_env * z);
9 : : #ifdef __cplusplus
10 : : }
11 : : #endif
12 : : static int r_standard_suffix(struct SN_env * z);
13 : : static int r_undouble(struct SN_env * z);
14 : : static int r_R2(struct SN_env * z);
15 : : static int r_R1(struct SN_env * z);
16 : : static int r_mark_regions(struct SN_env * z);
17 : : static int r_en_ending(struct SN_env * z);
18 : : static int r_e_ending(struct SN_env * z);
19 : : static int r_postlude(struct SN_env * z);
20 : : static int r_prelude(struct SN_env * z);
21 : : #ifdef __cplusplus
22 : : extern "C" {
23 : : #endif
24 : :
25 : :
26 : : extern struct SN_env * dutch_UTF_8_create_env(void);
27 : : extern void dutch_UTF_8_close_env(struct SN_env * z);
28 : :
29 : :
30 : : #ifdef __cplusplus
31 : : }
32 : : #endif
33 : : static const symbol s_0_1[2] = { 0xC3, 0xA1 };
34 : : static const symbol s_0_2[2] = { 0xC3, 0xA4 };
35 : : static const symbol s_0_3[2] = { 0xC3, 0xA9 };
36 : : static const symbol s_0_4[2] = { 0xC3, 0xAB };
37 : : static const symbol s_0_5[2] = { 0xC3, 0xAD };
38 : : static const symbol s_0_6[2] = { 0xC3, 0xAF };
39 : : static const symbol s_0_7[2] = { 0xC3, 0xB3 };
40 : : static const symbol s_0_8[2] = { 0xC3, 0xB6 };
41 : : static const symbol s_0_9[2] = { 0xC3, 0xBA };
42 : : static const symbol s_0_10[2] = { 0xC3, 0xBC };
43 : :
44 : : static const struct among a_0[11] =
45 : : {
46 : : { 0, 0, -1, 6, 0},
47 : : { 2, s_0_1, 0, 1, 0},
48 : : { 2, s_0_2, 0, 1, 0},
49 : : { 2, s_0_3, 0, 2, 0},
50 : : { 2, s_0_4, 0, 2, 0},
51 : : { 2, s_0_5, 0, 3, 0},
52 : : { 2, s_0_6, 0, 3, 0},
53 : : { 2, s_0_7, 0, 4, 0},
54 : : { 2, s_0_8, 0, 4, 0},
55 : : { 2, s_0_9, 0, 5, 0},
56 : : { 2, s_0_10, 0, 5, 0}
57 : : };
58 : :
59 : : static const symbol s_1_1[1] = { 'I' };
60 : : static const symbol s_1_2[1] = { 'Y' };
61 : :
62 : : static const struct among a_1[3] =
63 : : {
64 : : { 0, 0, -1, 3, 0},
65 : : { 1, s_1_1, 0, 2, 0},
66 : : { 1, s_1_2, 0, 1, 0}
67 : : };
68 : :
69 : : static const symbol s_2_0[2] = { 'd', 'd' };
70 : : static const symbol s_2_1[2] = { 'k', 'k' };
71 : : static const symbol s_2_2[2] = { 't', 't' };
72 : :
73 : : static const struct among a_2[3] =
74 : : {
75 : : { 2, s_2_0, -1, -1, 0},
76 : : { 2, s_2_1, -1, -1, 0},
77 : : { 2, s_2_2, -1, -1, 0}
78 : : };
79 : :
80 : : static const symbol s_3_0[3] = { 'e', 'n', 'e' };
81 : : static const symbol s_3_1[2] = { 's', 'e' };
82 : : static const symbol s_3_2[2] = { 'e', 'n' };
83 : : static const symbol s_3_3[5] = { 'h', 'e', 'd', 'e', 'n' };
84 : : static const symbol s_3_4[1] = { 's' };
85 : :
86 : : static const struct among a_3[5] =
87 : : {
88 : : { 3, s_3_0, -1, 2, 0},
89 : : { 2, s_3_1, -1, 3, 0},
90 : : { 2, s_3_2, -1, 2, 0},
91 : : { 5, s_3_3, 2, 1, 0},
92 : : { 1, s_3_4, -1, 3, 0}
93 : : };
94 : :
95 : : static const symbol s_4_0[3] = { 'e', 'n', 'd' };
96 : : static const symbol s_4_1[2] = { 'i', 'g' };
97 : : static const symbol s_4_2[3] = { 'i', 'n', 'g' };
98 : : static const symbol s_4_3[4] = { 'l', 'i', 'j', 'k' };
99 : : static const symbol s_4_4[4] = { 'b', 'a', 'a', 'r' };
100 : : static const symbol s_4_5[3] = { 'b', 'a', 'r' };
101 : :
102 : : static const struct among a_4[6] =
103 : : {
104 : : { 3, s_4_0, -1, 1, 0},
105 : : { 2, s_4_1, -1, 2, 0},
106 : : { 3, s_4_2, -1, 1, 0},
107 : : { 4, s_4_3, -1, 3, 0},
108 : : { 4, s_4_4, -1, 4, 0},
109 : : { 3, s_4_5, -1, 5, 0}
110 : : };
111 : :
112 : : static const symbol s_5_0[2] = { 'a', 'a' };
113 : : static const symbol s_5_1[2] = { 'e', 'e' };
114 : : static const symbol s_5_2[2] = { 'o', 'o' };
115 : : static const symbol s_5_3[2] = { 'u', 'u' };
116 : :
117 : : static const struct among a_5[4] =
118 : : {
119 : : { 2, s_5_0, -1, -1, 0},
120 : : { 2, s_5_1, -1, -1, 0},
121 : : { 2, s_5_2, -1, -1, 0},
122 : : { 2, s_5_3, -1, -1, 0}
123 : : };
124 : :
125 : : static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
126 : :
127 : : static const unsigned char g_v_I[] = { 1, 0, 0, 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
128 : :
129 : : static const unsigned char g_v_j[] = { 17, 67, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
130 : :
131 : : static const symbol s_0[] = { 'a' };
132 : : static const symbol s_1[] = { 'e' };
133 : : static const symbol s_2[] = { 'i' };
134 : : static const symbol s_3[] = { 'o' };
135 : : static const symbol s_4[] = { 'u' };
136 : : static const symbol s_5[] = { 'Y' };
137 : : static const symbol s_6[] = { 'I' };
138 : : static const symbol s_7[] = { 'Y' };
139 : : static const symbol s_8[] = { 'y' };
140 : : static const symbol s_9[] = { 'i' };
141 : : static const symbol s_10[] = { 'g', 'e', 'm' };
142 : : static const symbol s_11[] = { 'h', 'e', 'i', 'd' };
143 : : static const symbol s_12[] = { 'h', 'e', 'i', 'd' };
144 : : static const symbol s_13[] = { 'e', 'n' };
145 : : static const symbol s_14[] = { 'i', 'g' };
146 : :
1660 peter@eisentraut.org 147 :UBC 0 : static int r_prelude(struct SN_env * z) {
148 : : int among_var;
149 : 0 : { int c_test1 = z->c;
150 : 0 : while(1) {
151 : 0 : int c2 = z->c;
152 : 0 : z->bra = z->c;
153 [ # # # # : 0 : if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 5 || !((340306450 >> (z->p[z->c + 1] & 0x1f)) & 1)) among_var = 6; else
# # ]
2539 tgl@sss.pgh.pa.us 154 : 0 : among_var = find_among(z, a_0, 11);
1660 peter@eisentraut.org 155 : 0 : z->ket = z->c;
156 [ # # # # : 0 : switch (among_var) {
# # # ]
6591 tgl@sss.pgh.pa.us 157 : 0 : case 1:
1660 peter@eisentraut.org 158 : 0 : { int ret = slice_from_s(z, 1, s_0);
6591 tgl@sss.pgh.pa.us 159 [ # # ]: 0 : if (ret < 0) return ret;
160 : : }
161 : 0 : break;
162 : 0 : case 2:
1660 peter@eisentraut.org 163 : 0 : { int ret = slice_from_s(z, 1, s_1);
6591 tgl@sss.pgh.pa.us 164 [ # # ]: 0 : if (ret < 0) return ret;
165 : : }
166 : 0 : break;
167 : 0 : case 3:
1660 peter@eisentraut.org 168 : 0 : { int ret = slice_from_s(z, 1, s_2);
6591 tgl@sss.pgh.pa.us 169 [ # # ]: 0 : if (ret < 0) return ret;
170 : : }
171 : 0 : break;
172 : 0 : case 4:
1660 peter@eisentraut.org 173 : 0 : { int ret = slice_from_s(z, 1, s_3);
6591 tgl@sss.pgh.pa.us 174 [ # # ]: 0 : if (ret < 0) return ret;
175 : : }
176 : 0 : break;
177 : 0 : case 5:
1660 peter@eisentraut.org 178 : 0 : { int ret = slice_from_s(z, 1, s_4);
6591 tgl@sss.pgh.pa.us 179 [ # # ]: 0 : if (ret < 0) return ret;
180 : : }
181 : 0 : break;
182 : 0 : case 6:
1660 peter@eisentraut.org 183 : 0 : { int ret = skip_utf8(z->p, z->c, z->l, 1);
6591 tgl@sss.pgh.pa.us 184 [ # # ]: 0 : if (ret < 0) goto lab0;
1660 peter@eisentraut.org 185 : 0 : z->c = ret;
186 : : }
6591 tgl@sss.pgh.pa.us 187 : 0 : break;
188 : : }
189 : 0 : continue;
190 : 0 : lab0:
2539 191 : 0 : z->c = c2;
6591 192 : 0 : break;
193 : : }
2539 194 : 0 : z->c = c_test1;
195 : : }
1660 peter@eisentraut.org 196 : 0 : { int c3 = z->c;
197 : 0 : z->bra = z->c;
198 [ # # # # ]: 0 : if (z->c == z->l || z->p[z->c] != 'y') { z->c = c3; goto lab1; }
2539 tgl@sss.pgh.pa.us 199 : 0 : z->c++;
1660 peter@eisentraut.org 200 : 0 : z->ket = z->c;
201 : 0 : { int ret = slice_from_s(z, 1, s_5);
6591 tgl@sss.pgh.pa.us 202 [ # # ]: 0 : if (ret < 0) return ret;
203 : : }
204 : 0 : lab1:
205 : : ;
206 : : }
1660 peter@eisentraut.org 207 : 0 : while(1) {
208 : 0 : int c4 = z->c;
209 : 0 : while(1) {
2539 tgl@sss.pgh.pa.us 210 : 0 : int c5 = z->c;
1660 peter@eisentraut.org 211 [ # # ]: 0 : if (in_grouping_U(z, g_v, 97, 232, 0)) goto lab3;
212 : 0 : z->bra = z->c;
213 : 0 : { int c6 = z->c;
214 [ # # # # ]: 0 : if (z->c == z->l || z->p[z->c] != 'i') goto lab5;
2539 tgl@sss.pgh.pa.us 215 : 0 : z->c++;
1660 peter@eisentraut.org 216 : 0 : z->ket = z->c;
217 [ # # ]: 0 : if (in_grouping_U(z, g_v, 97, 232, 0)) goto lab5;
218 : 0 : { int ret = slice_from_s(z, 1, s_6);
6591 tgl@sss.pgh.pa.us 219 [ # # ]: 0 : if (ret < 0) return ret;
220 : : }
221 : 0 : goto lab4;
222 : 0 : lab5:
2539 223 : 0 : z->c = c6;
1660 peter@eisentraut.org 224 [ # # # # ]: 0 : if (z->c == z->l || z->p[z->c] != 'y') goto lab3;
2539 tgl@sss.pgh.pa.us 225 : 0 : z->c++;
1660 peter@eisentraut.org 226 : 0 : z->ket = z->c;
227 : 0 : { int ret = slice_from_s(z, 1, s_7);
6591 tgl@sss.pgh.pa.us 228 [ # # ]: 0 : if (ret < 0) return ret;
229 : : }
230 : : }
231 : 0 : lab4:
2539 232 : 0 : z->c = c5;
6591 233 : 0 : break;
234 : 0 : lab3:
2539 235 : 0 : z->c = c5;
1660 peter@eisentraut.org 236 : 0 : { int ret = skip_utf8(z->p, z->c, z->l, 1);
6591 tgl@sss.pgh.pa.us 237 [ # # ]: 0 : if (ret < 0) goto lab2;
1660 peter@eisentraut.org 238 : 0 : z->c = ret;
239 : : }
240 : : }
6591 tgl@sss.pgh.pa.us 241 : 0 : continue;
242 : 0 : lab2:
2539 243 : 0 : z->c = c4;
6591 244 : 0 : break;
245 : : }
246 : 0 : return 1;
247 : : }
248 : :
1660 peter@eisentraut.org 249 : 0 : static int r_mark_regions(struct SN_env * z) {
200 tgl@sss.pgh.pa.us 250 : 0 : z->I[2] = z->l;
1660 peter@eisentraut.org 251 : 0 : z->I[1] = z->l;
200 tgl@sss.pgh.pa.us 252 : 0 : { int c_test1 = z->c;
253 : 0 : { int ret = skip_utf8(z->p, z->c, z->l, 3);
254 [ # # ]: 0 : if (ret < 0) return 0;
255 : 0 : z->c = ret;
256 : : }
257 : 0 : z->I[0] = z->c;
258 : 0 : z->c = c_test1;
259 : : }
260 : :
261 : : {
6591 262 : 0 : int ret = out_grouping_U(z, g_v, 97, 232, 1);
263 [ # # ]: 0 : if (ret < 0) return 0;
264 : 0 : z->c += ret;
265 : : }
266 : :
267 : : {
268 : 0 : int ret = in_grouping_U(z, g_v, 97, 232, 1);
269 [ # # ]: 0 : if (ret < 0) return 0;
270 : 0 : z->c += ret;
271 : : }
200 272 : 0 : z->I[2] = z->c;
273 : :
274 [ # # ]: 0 : if (z->I[2] >= z->I[0]) goto lab0;
275 : 0 : z->I[2] = z->I[0];
6591 276 : 0 : lab0:
277 : :
278 : : {
279 : 0 : int ret = out_grouping_U(z, g_v, 97, 232, 1);
280 [ # # ]: 0 : if (ret < 0) return 0;
281 : 0 : z->c += ret;
282 : : }
283 : :
284 : : {
285 : 0 : int ret = in_grouping_U(z, g_v, 97, 232, 1);
286 [ # # ]: 0 : if (ret < 0) return 0;
287 : 0 : z->c += ret;
288 : : }
200 289 : 0 : z->I[1] = z->c;
6591 290 : 0 : return 1;
291 : : }
292 : :
1660 peter@eisentraut.org 293 : 0 : static int r_postlude(struct SN_env * z) {
294 : : int among_var;
295 : 0 : while(1) {
296 : 0 : int c1 = z->c;
297 : 0 : z->bra = z->c;
298 [ # # # # : 0 : if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 89)) among_var = 3; else
# # ]
2539 tgl@sss.pgh.pa.us 299 : 0 : among_var = find_among(z, a_1, 3);
1660 peter@eisentraut.org 300 : 0 : z->ket = z->c;
301 [ # # # # ]: 0 : switch (among_var) {
6591 tgl@sss.pgh.pa.us 302 : 0 : case 1:
1660 peter@eisentraut.org 303 : 0 : { int ret = slice_from_s(z, 1, s_8);
6591 tgl@sss.pgh.pa.us 304 [ # # ]: 0 : if (ret < 0) return ret;
305 : : }
306 : 0 : break;
307 : 0 : case 2:
1660 peter@eisentraut.org 308 : 0 : { int ret = slice_from_s(z, 1, s_9);
6591 tgl@sss.pgh.pa.us 309 [ # # ]: 0 : if (ret < 0) return ret;
310 : : }
311 : 0 : break;
312 : 0 : case 3:
1660 peter@eisentraut.org 313 : 0 : { int ret = skip_utf8(z->p, z->c, z->l, 1);
6591 tgl@sss.pgh.pa.us 314 [ # # ]: 0 : if (ret < 0) goto lab0;
1660 peter@eisentraut.org 315 : 0 : z->c = ret;
316 : : }
6591 tgl@sss.pgh.pa.us 317 : 0 : break;
318 : : }
319 : 0 : continue;
320 : 0 : lab0:
321 : 0 : z->c = c1;
322 : 0 : break;
323 : : }
324 : 0 : return 1;
325 : : }
326 : :
1660 peter@eisentraut.org 327 : 0 : static int r_R1(struct SN_env * z) {
200 tgl@sss.pgh.pa.us 328 : 0 : return z->I[2] <= z->c;
329 : : }
330 : :
1660 peter@eisentraut.org 331 : 0 : static int r_R2(struct SN_env * z) {
200 tgl@sss.pgh.pa.us 332 : 0 : return z->I[1] <= z->c;
333 : : }
334 : :
1660 peter@eisentraut.org 335 : 0 : static int r_undouble(struct SN_env * z) {
336 : 0 : { int m_test1 = z->l - z->c;
337 [ # # # # : 0 : if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1050640 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
# # ]
200 tgl@sss.pgh.pa.us 338 [ # # ]: 0 : if (!find_among_b(z, a_2, 3)) return 0;
2539 339 : 0 : z->c = z->l - m_test1;
340 : : }
1660 peter@eisentraut.org 341 : 0 : z->ket = z->c;
342 : 0 : { int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
6591 tgl@sss.pgh.pa.us 343 [ # # ]: 0 : if (ret < 0) return 0;
1660 peter@eisentraut.org 344 : 0 : z->c = ret;
345 : : }
346 : 0 : z->bra = z->c;
347 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 348 [ # # ]: 0 : if (ret < 0) return ret;
349 : : }
350 : 0 : return 1;
351 : : }
352 : :
1660 peter@eisentraut.org 353 : 0 : static int r_e_ending(struct SN_env * z) {
200 tgl@sss.pgh.pa.us 354 : 0 : z->I[3] = 0;
1660 peter@eisentraut.org 355 : 0 : z->ket = z->c;
356 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
2539 tgl@sss.pgh.pa.us 357 : 0 : z->c--;
1660 peter@eisentraut.org 358 : 0 : z->bra = z->c;
359 : 0 : { int ret = r_R1(z);
2539 tgl@sss.pgh.pa.us 360 [ # # ]: 0 : if (ret <= 0) return ret;
361 : : }
1660 peter@eisentraut.org 362 : 0 : { int m_test1 = z->l - z->c;
363 [ # # ]: 0 : if (out_grouping_b_U(z, g_v, 97, 232, 0)) return 0;
2539 tgl@sss.pgh.pa.us 364 : 0 : z->c = z->l - m_test1;
365 : : }
1660 peter@eisentraut.org 366 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 367 [ # # ]: 0 : if (ret < 0) return ret;
368 : : }
200 369 : 0 : z->I[3] = 1;
1660 peter@eisentraut.org 370 : 0 : { int ret = r_undouble(z);
2539 tgl@sss.pgh.pa.us 371 [ # # ]: 0 : if (ret <= 0) return ret;
372 : : }
6591 373 : 0 : return 1;
374 : : }
375 : :
1660 peter@eisentraut.org 376 : 0 : static int r_en_ending(struct SN_env * z) {
377 : 0 : { int ret = r_R1(z);
2539 tgl@sss.pgh.pa.us 378 [ # # ]: 0 : if (ret <= 0) return ret;
379 : : }
1660 peter@eisentraut.org 380 : 0 : { int m1 = z->l - z->c; (void)m1;
381 [ # # ]: 0 : if (out_grouping_b_U(z, g_v, 97, 232, 0)) return 0;
6591 tgl@sss.pgh.pa.us 382 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 383 : 0 : { int m2 = z->l - z->c; (void)m2;
384 [ # # ]: 0 : if (!(eq_s_b(z, 3, s_10))) goto lab0;
6591 tgl@sss.pgh.pa.us 385 : 0 : return 0;
386 : 0 : lab0:
387 : 0 : z->c = z->l - m2;
388 : : }
389 : : }
1660 peter@eisentraut.org 390 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 391 [ # # ]: 0 : if (ret < 0) return ret;
392 : : }
1660 peter@eisentraut.org 393 : 0 : { int ret = r_undouble(z);
2539 tgl@sss.pgh.pa.us 394 [ # # ]: 0 : if (ret <= 0) return ret;
395 : : }
6591 396 : 0 : return 1;
397 : : }
398 : :
1660 peter@eisentraut.org 399 : 0 : static int r_standard_suffix(struct SN_env * z) {
400 : : int among_var;
401 : 0 : { int m1 = z->l - z->c; (void)m1;
402 : 0 : z->ket = z->c;
403 [ # # # # : 0 : if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((540704 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
# # ]
2539 tgl@sss.pgh.pa.us 404 : 0 : among_var = find_among_b(z, a_3, 5);
200 405 [ # # ]: 0 : if (!among_var) goto lab0;
1660 peter@eisentraut.org 406 : 0 : z->bra = z->c;
407 [ # # # # ]: 0 : switch (among_var) {
6591 tgl@sss.pgh.pa.us 408 : 0 : case 1:
1660 peter@eisentraut.org 409 : 0 : { int ret = r_R1(z);
2539 tgl@sss.pgh.pa.us 410 [ # # ]: 0 : if (ret == 0) goto lab0;
6591 411 [ # # ]: 0 : if (ret < 0) return ret;
412 : : }
1660 peter@eisentraut.org 413 : 0 : { int ret = slice_from_s(z, 4, s_11);
6591 tgl@sss.pgh.pa.us 414 [ # # ]: 0 : if (ret < 0) return ret;
415 : : }
416 : 0 : break;
417 : 0 : case 2:
1660 peter@eisentraut.org 418 : 0 : { int ret = r_en_ending(z);
2539 tgl@sss.pgh.pa.us 419 [ # # ]: 0 : if (ret == 0) goto lab0;
6591 420 [ # # ]: 0 : if (ret < 0) return ret;
421 : : }
422 : 0 : break;
423 : 0 : case 3:
1660 peter@eisentraut.org 424 : 0 : { int ret = r_R1(z);
2539 tgl@sss.pgh.pa.us 425 [ # # ]: 0 : if (ret == 0) goto lab0;
6591 426 [ # # ]: 0 : if (ret < 0) return ret;
427 : : }
1660 peter@eisentraut.org 428 [ # # ]: 0 : if (out_grouping_b_U(z, g_v_j, 97, 232, 0)) goto lab0;
429 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 430 [ # # ]: 0 : if (ret < 0) return ret;
431 : : }
432 : 0 : break;
433 : : }
434 : 0 : lab0:
435 : 0 : z->c = z->l - m1;
436 : : }
1660 peter@eisentraut.org 437 : 0 : { int m2 = z->l - z->c; (void)m2;
438 : 0 : { int ret = r_e_ending(z);
6591 tgl@sss.pgh.pa.us 439 [ # # ]: 0 : if (ret < 0) return ret;
440 : : }
441 : 0 : z->c = z->l - m2;
442 : : }
1660 peter@eisentraut.org 443 : 0 : { int m3 = z->l - z->c; (void)m3;
444 : 0 : z->ket = z->c;
445 [ # # ]: 0 : if (!(eq_s_b(z, 4, s_12))) goto lab1;
446 : 0 : z->bra = z->c;
447 : 0 : { int ret = r_R2(z);
1916 448 [ # # ]: 0 : if (ret == 0) goto lab1;
6591 tgl@sss.pgh.pa.us 449 [ # # ]: 0 : if (ret < 0) return ret;
450 : : }
1660 peter@eisentraut.org 451 : 0 : { int m4 = z->l - z->c; (void)m4;
452 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab2;
2539 tgl@sss.pgh.pa.us 453 : 0 : z->c--;
1916 peter@eisentraut.org 454 : 0 : goto lab1;
455 : 0 : lab2:
6591 tgl@sss.pgh.pa.us 456 : 0 : z->c = z->l - m4;
457 : : }
1660 peter@eisentraut.org 458 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 459 [ # # ]: 0 : if (ret < 0) return ret;
460 : : }
1660 peter@eisentraut.org 461 : 0 : z->ket = z->c;
462 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_13))) goto lab1;
463 : 0 : z->bra = z->c;
464 : 0 : { int ret = r_en_ending(z);
1916 465 [ # # ]: 0 : if (ret == 0) goto lab1;
6591 tgl@sss.pgh.pa.us 466 [ # # ]: 0 : if (ret < 0) return ret;
467 : : }
1916 peter@eisentraut.org 468 : 0 : lab1:
6591 tgl@sss.pgh.pa.us 469 : 0 : z->c = z->l - m3;
470 : : }
1660 peter@eisentraut.org 471 : 0 : { int m5 = z->l - z->c; (void)m5;
472 : 0 : z->ket = z->c;
473 [ # # # # : 0 : if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3;
# # ]
2539 tgl@sss.pgh.pa.us 474 : 0 : among_var = find_among_b(z, a_4, 6);
200 475 [ # # ]: 0 : if (!among_var) goto lab3;
1660 peter@eisentraut.org 476 : 0 : z->bra = z->c;
477 [ # # # # : 0 : switch (among_var) {
# # ]
6591 tgl@sss.pgh.pa.us 478 : 0 : case 1:
1660 peter@eisentraut.org 479 : 0 : { int ret = r_R2(z);
1916 480 [ # # ]: 0 : if (ret == 0) goto lab3;
6591 tgl@sss.pgh.pa.us 481 [ # # ]: 0 : if (ret < 0) return ret;
482 : : }
1660 peter@eisentraut.org 483 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 484 [ # # ]: 0 : if (ret < 0) return ret;
485 : : }
1660 peter@eisentraut.org 486 : 0 : { int m6 = z->l - z->c; (void)m6;
487 : 0 : z->ket = z->c;
488 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_14))) goto lab5;
489 : 0 : z->bra = z->c;
490 : 0 : { int ret = r_R2(z);
1916 491 [ # # ]: 0 : if (ret == 0) goto lab5;
6591 tgl@sss.pgh.pa.us 492 [ # # ]: 0 : if (ret < 0) return ret;
493 : : }
1660 peter@eisentraut.org 494 : 0 : { int m7 = z->l - z->c; (void)m7;
495 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6;
2539 tgl@sss.pgh.pa.us 496 : 0 : z->c--;
1916 peter@eisentraut.org 497 : 0 : goto lab5;
498 : 0 : lab6:
6591 tgl@sss.pgh.pa.us 499 : 0 : z->c = z->l - m7;
500 : : }
1660 peter@eisentraut.org 501 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 502 [ # # ]: 0 : if (ret < 0) return ret;
503 : : }
1916 peter@eisentraut.org 504 : 0 : goto lab4;
505 : 0 : lab5:
6591 tgl@sss.pgh.pa.us 506 : 0 : z->c = z->l - m6;
1660 peter@eisentraut.org 507 : 0 : { int ret = r_undouble(z);
1916 508 [ # # ]: 0 : if (ret == 0) goto lab3;
6591 tgl@sss.pgh.pa.us 509 [ # # ]: 0 : if (ret < 0) return ret;
510 : : }
511 : : }
1916 peter@eisentraut.org 512 : 0 : lab4:
6591 tgl@sss.pgh.pa.us 513 : 0 : break;
514 : 0 : case 2:
1660 peter@eisentraut.org 515 : 0 : { int ret = r_R2(z);
1916 516 [ # # ]: 0 : if (ret == 0) goto lab3;
6591 tgl@sss.pgh.pa.us 517 [ # # ]: 0 : if (ret < 0) return ret;
518 : : }
1660 peter@eisentraut.org 519 : 0 : { int m8 = z->l - z->c; (void)m8;
520 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7;
2539 tgl@sss.pgh.pa.us 521 : 0 : z->c--;
1916 peter@eisentraut.org 522 : 0 : goto lab3;
523 : 0 : lab7:
6591 tgl@sss.pgh.pa.us 524 : 0 : z->c = z->l - m8;
525 : : }
1660 peter@eisentraut.org 526 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 527 [ # # ]: 0 : if (ret < 0) return ret;
528 : : }
529 : 0 : break;
530 : 0 : case 3:
1660 peter@eisentraut.org 531 : 0 : { int ret = r_R2(z);
1916 532 [ # # ]: 0 : if (ret == 0) goto lab3;
6591 tgl@sss.pgh.pa.us 533 [ # # ]: 0 : if (ret < 0) return ret;
534 : : }
1660 peter@eisentraut.org 535 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 536 [ # # ]: 0 : if (ret < 0) return ret;
537 : : }
1660 peter@eisentraut.org 538 : 0 : { int ret = r_e_ending(z);
1916 539 [ # # ]: 0 : if (ret == 0) goto lab3;
6591 tgl@sss.pgh.pa.us 540 [ # # ]: 0 : if (ret < 0) return ret;
541 : : }
542 : 0 : break;
543 : 0 : case 4:
1660 peter@eisentraut.org 544 : 0 : { int ret = r_R2(z);
1916 545 [ # # ]: 0 : if (ret == 0) goto lab3;
6591 tgl@sss.pgh.pa.us 546 [ # # ]: 0 : if (ret < 0) return ret;
547 : : }
1660 peter@eisentraut.org 548 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 549 [ # # ]: 0 : if (ret < 0) return ret;
550 : : }
551 : 0 : break;
552 : 0 : case 5:
1660 peter@eisentraut.org 553 : 0 : { int ret = r_R2(z);
1916 554 [ # # ]: 0 : if (ret == 0) goto lab3;
6591 tgl@sss.pgh.pa.us 555 [ # # ]: 0 : if (ret < 0) return ret;
556 : : }
200 557 [ # # ]: 0 : if (!(z->I[3])) goto lab3;
1660 peter@eisentraut.org 558 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 559 [ # # ]: 0 : if (ret < 0) return ret;
560 : : }
561 : 0 : break;
562 : : }
1916 peter@eisentraut.org 563 : 0 : lab3:
6591 tgl@sss.pgh.pa.us 564 : 0 : z->c = z->l - m5;
565 : : }
1660 peter@eisentraut.org 566 : 0 : { int m9 = z->l - z->c; (void)m9;
567 [ # # ]: 0 : if (out_grouping_b_U(z, g_v_I, 73, 232, 0)) goto lab8;
568 : 0 : { int m_test10 = z->l - z->c;
569 [ # # # # : 0 : if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab8;
# # ]
200 tgl@sss.pgh.pa.us 570 [ # # ]: 0 : if (!find_among_b(z, a_5, 4)) goto lab8;
1660 peter@eisentraut.org 571 [ # # ]: 0 : if (out_grouping_b_U(z, g_v, 97, 232, 0)) goto lab8;
2539 tgl@sss.pgh.pa.us 572 : 0 : z->c = z->l - m_test10;
573 : : }
1660 peter@eisentraut.org 574 : 0 : z->ket = z->c;
575 : 0 : { int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
1916 576 [ # # ]: 0 : if (ret < 0) goto lab8;
1660 577 : 0 : z->c = ret;
578 : : }
579 : 0 : z->bra = z->c;
580 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 581 [ # # ]: 0 : if (ret < 0) return ret;
582 : : }
1916 peter@eisentraut.org 583 : 0 : lab8:
6591 tgl@sss.pgh.pa.us 584 : 0 : z->c = z->l - m9;
585 : : }
586 : 0 : return 1;
587 : : }
588 : :
1660 peter@eisentraut.org 589 : 0 : extern int dutch_UTF_8_stem(struct SN_env * z) {
590 : 0 : { int c1 = z->c;
591 : 0 : { int ret = r_prelude(z);
6591 tgl@sss.pgh.pa.us 592 [ # # ]: 0 : if (ret < 0) return ret;
593 : : }
594 : 0 : z->c = c1;
595 : : }
1660 peter@eisentraut.org 596 : 0 : { int c2 = z->c;
597 : 0 : { int ret = r_mark_regions(z);
6591 tgl@sss.pgh.pa.us 598 [ # # ]: 0 : if (ret < 0) return ret;
599 : : }
600 : 0 : z->c = c2;
601 : : }
1660 peter@eisentraut.org 602 : 0 : z->lb = z->c; z->c = z->l;
603 : :
604 : :
605 : 0 : { int ret = r_standard_suffix(z);
2539 tgl@sss.pgh.pa.us 606 [ # # ]: 0 : if (ret < 0) return ret;
607 : : }
6591 608 : 0 : z->c = z->lb;
1660 peter@eisentraut.org 609 : 0 : { int c3 = z->c;
610 : 0 : { int ret = r_postlude(z);
6591 tgl@sss.pgh.pa.us 611 [ # # ]: 0 : if (ret < 0) return ret;
612 : : }
2539 613 : 0 : z->c = c3;
614 : : }
6591 615 : 0 : return 1;
616 : : }
617 : :
200 618 : 0 : extern struct SN_env * dutch_UTF_8_create_env(void) { return SN_create_env(0, 4); }
619 : :
6591 620 : 0 : extern void dutch_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
621 : :
|