Branch data Line data Source code
1 : : /* This file was generated automatically by the Snowball to ISO C++ compiler */
2 : :
3 : : #include <limits.h>
4 : : #include "german.h"
5 : :
6 : : static const symbol s_pool[] = {
7 : : #define s_0_1 0
8 : : 'U',
9 : : #define s_0_2 1
10 : : 'Y',
11 : : #define s_0_3 2
12 : : 0xC3, 0xA4,
13 : : #define s_0_4 4
14 : : 0xC3, 0xB6,
15 : : #define s_0_5 6
16 : : 0xC3, 0xBC,
17 : : #define s_1_0 s_1_1
18 : : #define s_1_1 8
19 : : 'e', 'm',
20 : : #define s_1_2 10
21 : : 'e', 'n',
22 : : #define s_1_3 12
23 : : 'e', 'r', 'n',
24 : : #define s_1_4 s_1_3
25 : : #define s_1_5 (s_1_6 + 1)
26 : : #define s_1_6 15
27 : : 'e', 's',
28 : : #define s_2_0 17
29 : : 'e', 'n',
30 : : #define s_2_1 19
31 : : 'e', 'r',
32 : : #define s_2_2 (s_2_3 + 1)
33 : : #define s_2_3 21
34 : : 'e', 's', 't',
35 : : #define s_3_0 24
36 : : 'i', 'g',
37 : : #define s_3_1 26
38 : : 'l', 'i', 'c', 'h',
39 : : #define s_4_0 30
40 : : 'e', 'n', 'd',
41 : : #define s_4_1 33
42 : : 'i', 'g',
43 : : #define s_4_2 35
44 : : 'u', 'n', 'g',
45 : : #define s_4_3 38
46 : : 'l', 'i', 'c', 'h',
47 : : #define s_4_4 42
48 : : 'i', 's', 'c', 'h',
49 : : #define s_4_5 46
50 : : 'i', 'k',
51 : : #define s_4_6 48
52 : : 'h', 'e', 'i', 't',
53 : : #define s_4_7 52
54 : : 'k', 'e', 'i', 't',
55 : : };
56 : :
57 : :
58 : : static const struct among a_0[6] =
59 : : {
60 : : /* 0 */ { 0, 0, -1, 6},
61 : : /* 1 */ { 1, s_0_1, 0, 2},
62 : : /* 2 */ { 1, s_0_2, 0, 1},
63 : : /* 3 */ { 2, s_0_3, 0, 3},
64 : : /* 4 */ { 2, s_0_4, 0, 4},
65 : : /* 5 */ { 2, s_0_5, 0, 5}
66 : : };
67 : :
68 : :
69 : : static const struct among a_1[7] =
70 : : {
71 : : /* 0 */ { 1, s_1_0, -1, 2},
72 : : /* 1 */ { 2, s_1_1, -1, 1},
73 : : /* 2 */ { 2, s_1_2, -1, 2},
74 : : /* 3 */ { 3, s_1_3, -1, 1},
75 : : /* 4 */ { 2, s_1_4, -1, 1},
76 : : /* 5 */ { 1, s_1_5, -1, 3},
77 : : /* 6 */ { 2, s_1_6, 5, 2}
78 : : };
79 : :
80 : :
81 : : static const struct among a_2[4] =
82 : : {
83 : : /* 0 */ { 2, s_2_0, -1, 1},
84 : : /* 1 */ { 2, s_2_1, -1, 1},
85 : : /* 2 */ { 2, s_2_2, -1, 2},
86 : : /* 3 */ { 3, s_2_3, 2, 1}
87 : : };
88 : :
89 : :
90 : : static const struct among a_3[2] =
91 : : {
92 : : /* 0 */ { 2, s_3_0, -1, 1},
93 : : /* 1 */ { 4, s_3_1, -1, 1}
94 : : };
95 : :
96 : :
97 : : static const struct among a_4[8] =
98 : : {
99 : : /* 0 */ { 3, s_4_0, -1, 1},
100 : : /* 1 */ { 2, s_4_1, -1, 2},
101 : : /* 2 */ { 3, s_4_2, -1, 1},
102 : : /* 3 */ { 4, s_4_3, -1, 3},
103 : : /* 4 */ { 4, s_4_4, -1, 2},
104 : : /* 5 */ { 2, s_4_5, -1, 2},
105 : : /* 6 */ { 4, s_4_6, -1, 3},
106 : : /* 7 */ { 4, s_4_7, -1, 4}
107 : : };
108 : :
109 : : static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32, 8 };
110 : :
111 : : static const unsigned char g_s_ending[] = { 117, 30, 5 };
112 : :
113 : : static const unsigned char g_st_ending[] = { 117, 30, 4 };
114 : :
115 : : static const symbol s_0[] = { 0xC3, 0x9F };
116 : : static const symbol s_1[] = { 's', 's' };
117 : : static const symbol s_2[] = { 'U' };
118 : : static const symbol s_3[] = { 'Y' };
119 : : static const symbol s_4[] = { 'y' };
120 : : static const symbol s_5[] = { 'u' };
121 : : static const symbol s_6[] = { 'a' };
122 : : static const symbol s_7[] = { 'o' };
123 : : static const symbol s_8[] = { 'u' };
124 : : static const symbol s_9[] = { 'n', 'i', 's' };
125 : : static const symbol s_10[] = { 'i', 'g' };
126 : : static const symbol s_11[] = { 'e', 'r' };
127 : : static const symbol s_12[] = { 'e', 'n' };
128 : :
129 : 105649 : int Xapian::InternalStemGerman::r_prelude() { /* forwardmode */
130 : 105649 : { int c_test1 = c; /* test, line 35 */
131 : 4274693 : while(1) { /* repeat, line 35 */
132 : 4380342 : int c2 = c;
133 : 4380342 : { int c3 = c; /* or, line 38 */
134 : 4380342 : bra = c; /* [, line 37 */
135 [ + + ]: 4380342 : if (!(eq_s(2, s_0))) goto lab2; /* literal, line 37 */
136 : 587 : ket = c; /* ], line 37 */
137 : 587 : { int ret = slice_from_s(2, s_1); /* <-, line 37 */
138 [ - + ]: 587 : if (ret < 0) return ret;
139 : : }
140 : 587 : goto lab1;
141 : : lab2:
142 : 4379755 : c = c3;
143 : 4379755 : { int ret = skip_utf8(p, c, 0, l, 1);
144 [ + + ]: 4379755 : if (ret < 0) goto lab0;
145 : 4274106 : c = ret; /* next, line 38 */
146 : : }
147 : : }
148 : : lab1:
149 : 4274693 : continue;
150 : : lab0:
151 : 105649 : c = c2;
152 : : break;
153 : : }
154 : 105649 : c = c_test1;
155 : : }
156 : 4617 : while(1) { /* repeat, line 41 */
157 : 110266 : int c4 = c;
158 : 4275280 : while(1) { /* goto, line 41 */
159 : 4385546 : int c5 = c;
160 [ + + ]: 4385546 : if (in_grouping_U(g_v, 97, 252, 0)) goto lab4; /* grouping v, line 42 */
161 : 555034 : bra = c; /* [, line 42 */
162 : 555034 : { int c6 = c; /* or, line 42 */
163 [ + + ][ + + ]: 555034 : if (c == l || p[c] != 'u') goto lab6;
164 : 15380 : c++;
165 : 15380 : ket = c; /* ], line 42 */
166 [ + + ]: 15380 : if (in_grouping_U(g_v, 97, 252, 0)) goto lab6; /* grouping v, line 42 */
167 : 2483 : { int ret = slice_from_s(1, s_2); /* <-, line 42 */
168 [ - + ]: 2483 : if (ret < 0) return ret;
169 : : }
170 : 2483 : goto lab5;
171 : : lab6:
172 : 552551 : c = c6;
173 [ + + ][ + + ]: 552551 : if (c == l || p[c] != 'y') goto lab4;
174 : 11338 : c++;
175 : 11338 : ket = c; /* ], line 43 */
176 [ + + ]: 11338 : if (in_grouping_U(g_v, 97, 252, 0)) goto lab4; /* grouping v, line 43 */
177 : 2134 : { int ret = slice_from_s(1, s_3); /* <-, line 43 */
178 [ - + ]: 2134 : if (ret < 0) return ret;
179 : : }
180 : : }
181 : : lab5:
182 : 4617 : c = c5;
183 : : break;
184 : : lab4:
185 : 4380929 : c = c5;
186 : 4380929 : { int ret = skip_utf8(p, c, 0, l, 1);
187 [ + + ]: 4380929 : if (ret < 0) goto lab3;
188 : 4275280 : c = ret; /* goto, line 41 */
189 : : }
190 : : }
191 : 4617 : continue;
192 : : lab3:
193 : 105649 : c = c4;
194 : : break;
195 : : }
196 : 105649 : return 1;
197 : : }
198 : :
199 : 105649 : int Xapian::InternalStemGerman::r_mark_regions() { /* forwardmode */
200 : 105649 : I_p1 = l; /* p1 = <integer expression>, line 49 */
201 : 105649 : I_p2 = l; /* p2 = <integer expression>, line 50 */
202 : 105649 : { int c_test1 = c; /* test, line 52 */
203 : 105649 : { int ret = skip_utf8(p, c, 0, l, + 3); /* hop, line 52 */
204 [ + + ]: 105649 : if (ret < 0) return 0;
205 : 101697 : c = ret;
206 : : }
207 : 101697 : I_x = c; /* setmark x, line 52 */
208 : 101697 : c = c_test1;
209 : : }
210 : 101697 : { int ret = out_grouping_U(g_v, 97, 252, 1); /* gopast */ /* grouping v, line 54 */
211 [ + + ]: 101697 : if (ret < 0) return 0;
212 : 95780 : c += ret;
213 : : }
214 : 95780 : { int ret = in_grouping_U(g_v, 97, 252, 1); /* gopast */ /* non v, line 54 */
215 [ + + ]: 95780 : if (ret < 0) return 0;
216 : 94371 : c += ret;
217 : : }
218 : 94371 : I_p1 = c; /* setmark p1, line 54 */
219 : : /* try, line 55 */
220 [ + + ]: 94371 : if (!(I_p1 < I_x)) goto lab0; /* p1 < <integer expression>, line 55 */
221 : 15303 : I_p1 = I_x; /* p1 = <integer expression>, line 55 */
222 : : lab0:
223 : 94371 : { int ret = out_grouping_U(g_v, 97, 252, 1); /* gopast */ /* grouping v, line 56 */
224 [ + + ]: 94371 : if (ret < 0) return 0;
225 : 83873 : c += ret;
226 : : }
227 : 83873 : { int ret = in_grouping_U(g_v, 97, 252, 1); /* gopast */ /* non v, line 56 */
228 [ + + ]: 83873 : if (ret < 0) return 0;
229 : 80254 : c += ret;
230 : : }
231 : 80254 : I_p2 = c; /* setmark p2, line 56 */
232 : 105649 : return 1;
233 : : }
234 : :
235 : 4324058 : int Xapian::InternalStemGerman::r_postlude() { /* forwardmode */
236 : : int among_var;
237 : 4218409 : while(1) { /* repeat, line 60 */
238 : 4324058 : int c1 = c;
239 : 4324058 : bra = c; /* [, line 62 */
240 : 4324058 : among_var = find_among(s_pool, a_0, 6, 0, 0); /* substring, line 62 */
241 [ - + ]: 4324058 : if (!(among_var)) goto lab0;
242 : 4324058 : ket = c; /* ], line 62 */
243 [ - + + + + : 4324058 : switch(among_var) { /* among, line 62 */
+ + - ]
244 : 0 : case 0: goto lab0;
245 : : case 1:
246 : 10318 : { int ret = slice_from_s(1, s_4); /* <-, line 63 */
247 [ - + ]: 10318 : if (ret < 0) return ret;
248 : : }
249 : 10318 : break;
250 : : case 2:
251 : 10628 : { int ret = slice_from_s(1, s_5); /* <-, line 64 */
252 [ - + ]: 10628 : if (ret < 0) return ret;
253 : : }
254 : 10628 : break;
255 : : case 3:
256 : 3053 : { int ret = slice_from_s(1, s_6); /* <-, line 65 */
257 [ - + ]: 3053 : if (ret < 0) return ret;
258 : : }
259 : 3053 : break;
260 : : case 4:
261 : 1251 : { int ret = slice_from_s(1, s_7); /* <-, line 66 */
262 [ - + ]: 1251 : if (ret < 0) return ret;
263 : : }
264 : 1251 : break;
265 : : case 5:
266 : 3014 : { int ret = slice_from_s(1, s_8); /* <-, line 67 */
267 [ - + ]: 3014 : if (ret < 0) return ret;
268 : : }
269 : 3014 : break;
270 : : case 6:
271 : 4295794 : { int ret = skip_utf8(p, c, 0, l, 1);
272 [ + + ]: 4295794 : if (ret < 0) goto lab0;
273 : 4190145 : c = ret; /* next, line 68 */
274 : : }
275 : : break;
276 : : }
277 : 4218409 : continue;
278 : : lab0:
279 : 105649 : c = c1;
280 : : break;
281 : : }
282 : 105649 : return 1;
283 : : }
284 : :
285 : 29499 : int Xapian::InternalStemGerman::r_R1() { /* backwardmode */
286 [ + + ]: 29499 : if (!(I_p1 <= c)) return 0; /* p1 <= <integer expression>, line 75 */
287 : 29499 : return 1;
288 : : }
289 : :
290 : 7073 : int Xapian::InternalStemGerman::r_R2() { /* backwardmode */
291 [ + + ]: 7073 : if (!(I_p2 <= c)) return 0; /* p2 <= <integer expression>, line 76 */
292 : 7073 : return 1;
293 : : }
294 : :
295 : 105649 : int Xapian::InternalStemGerman::r_standard_suffix() { /* backwardmode */
296 : : int among_var;
297 : 105649 : { int m1 = l - c; (void)m1; /* do, line 79 */
298 : 105649 : ket = c; /* [, line 80 */
299 [ + - ][ + + ]: 105649 : if (c <= lb || p[c - 1] >> 5 != 3 || !((811040 >> (p[c - 1] & 0x1f)) & 1)) goto lab0; /* substring, line 80 */
[ + + ]
300 : 33999 : among_var = find_among_b(s_pool, a_1, 7, 0, 0);
301 [ + + ]: 33999 : if (!(among_var)) goto lab0;
302 : 26387 : bra = c; /* ], line 80 */
303 : 26387 : { int ret = r_R1(); /* call R1, line 80 */
304 [ + + ]: 26387 : if (ret == 0) goto lab0;
305 [ - + ]: 25425 : if (ret < 0) return ret;
306 : : }
307 [ - + + + : 25425 : switch(among_var) { /* among, line 80 */
- ]
308 : 0 : case 0: goto lab0;
309 : : case 1:
310 [ - + ]: 3086 : if (slice_del() == -1) return -1; /* delete, line 82 */
311 : 3086 : break;
312 : : case 2:
313 [ - + ]: 19136 : if (slice_del() == -1) return -1; /* delete, line 85 */
314 : 19136 : { int m2 = l - c; (void)m2; /* try, line 86 */
315 : 19136 : ket = c; /* [, line 86 */
316 [ + - ][ + + ]: 19136 : if (c <= lb || p[c - 1] != 's') { c = l - m2; goto lab1; }
317 : 1278 : c--;
318 : 1278 : bra = c; /* ], line 86 */
319 [ + + ]: 1278 : if (!(eq_s_b(3, s_9))) { c = l - m2; goto lab1; } /* literal, line 86 */
320 [ - + ]: 70 : if (slice_del() == -1) return -1; /* delete, line 86 */
321 : : lab1:
322 : : ;
323 : : }
324 : 19136 : break;
325 : : case 3:
326 [ + + ]: 3203 : if (in_grouping_b_U(g_s_ending, 98, 116, 0)) goto lab0; /* grouping s_ending, line 89 */
327 [ - + ]: 1466 : if (slice_del() == -1) return -1; /* delete, line 89 */
328 : : break;
329 : : }
330 : : lab0:
331 : 105649 : c = l - m1;
332 : : }
333 : 105649 : { int m3 = l - c; (void)m3; /* do, line 93 */
334 : 105649 : ket = c; /* [, line 94 */
335 [ + + ][ + + ]: 105649 : if (c - 1 <= lb || p[c - 1] >> 5 != 3 || !((1327104 >> (p[c - 1] & 0x1f)) & 1)) goto lab2; /* substring, line 94 */
[ + + ]
336 : 20550 : among_var = find_among_b(s_pool, a_2, 4, 0, 0);
337 [ + + ]: 20550 : if (!(among_var)) goto lab2;
338 : 2912 : bra = c; /* ], line 94 */
339 : 2912 : { int ret = r_R1(); /* call R1, line 94 */
340 [ + + ]: 2912 : if (ret == 0) goto lab2;
341 [ - + ]: 2570 : if (ret < 0) return ret;
342 : : }
343 [ - + + - ]: 2570 : switch(among_var) { /* among, line 94 */
344 : 0 : case 0: goto lab2;
345 : : case 1:
346 [ - + ]: 1485 : if (slice_del() == -1) return -1; /* delete, line 96 */
347 : 1485 : break;
348 : : case 2:
349 [ + + ]: 1085 : if (in_grouping_b_U(g_st_ending, 98, 116, 0)) goto lab2; /* grouping st_ending, line 99 */
350 : 513 : { int ret = skip_utf8(p, c, lb, l, - 3); /* hop, line 99 */
351 [ + + ]: 513 : if (ret < 0) goto lab2;
352 : 471 : c = ret;
353 : : }
354 [ - + ]: 471 : if (slice_del() == -1) return -1; /* delete, line 99 */
355 : : break;
356 : : }
357 : : lab2:
358 : 105649 : c = l - m3;
359 : : }
360 : 105649 : { int m4 = l - c; (void)m4; /* do, line 103 */
361 : 105649 : ket = c; /* [, line 104 */
362 [ + + ][ + + ]: 105649 : if (c - 1 <= lb || p[c - 1] >> 5 != 3 || !((1051024 >> (p[c - 1] & 0x1f)) & 1)) goto lab3; /* substring, line 104 */
[ + + ]
363 : 32669 : among_var = find_among_b(s_pool, a_4, 8, 0, 0);
364 [ + + ]: 32669 : if (!(among_var)) goto lab3;
365 : 6675 : bra = c; /* ], line 104 */
366 : 6675 : { int ret = r_R2(); /* call R2, line 104 */
367 [ + + ]: 6675 : if (ret == 0) goto lab3;
368 [ - + ]: 4370 : if (ret < 0) return ret;
369 : : }
370 [ - + + + + : 4370 : switch(among_var) { /* among, line 104 */
- ]
371 : 0 : case 0: goto lab3;
372 : : case 1:
373 [ - + ]: 1671 : if (slice_del() == -1) return -1; /* delete, line 106 */
374 : 1671 : { int m5 = l - c; (void)m5; /* try, line 107 */
375 : 1671 : ket = c; /* [, line 107 */
376 [ + + ]: 1671 : if (!(eq_s_b(2, s_10))) { c = l - m5; goto lab4; } /* literal, line 107 */
377 : 91 : bra = c; /* ], line 107 */
378 : 91 : { int m6 = l - c; (void)m6; /* not, line 107 */
379 [ + - ][ + + ]: 91 : if (c <= lb || p[c - 1] != 'e') goto lab5;
380 : 11 : c--;
381 : 11 : { c = l - m5; goto lab4; }
382 : : lab5:
383 : 80 : c = l - m6;
384 : : }
385 : 80 : { int ret = r_R2(); /* call R2, line 107 */
386 [ + + ]: 80 : if (ret == 0) { c = l - m5; goto lab4; }
387 [ - + ]: 64 : if (ret < 0) return ret;
388 : : }
389 [ - + ]: 64 : if (slice_del() == -1) return -1; /* delete, line 107 */
390 : : lab4:
391 : : ;
392 : : }
393 : 1671 : break;
394 : : case 2:
395 : 1492 : { int m7 = l - c; (void)m7; /* not, line 110 */
396 [ + - ][ + + ]: 1492 : if (c <= lb || p[c - 1] != 'e') goto lab6;
397 : 20 : c--;
398 : 20 : goto lab3;
399 : : lab6:
400 : 1472 : c = l - m7;
401 : : }
402 [ - + ]: 1472 : if (slice_del() == -1) return -1; /* delete, line 110 */
403 : 1472 : break;
404 : : case 3:
405 [ - + ]: 845 : if (slice_del() == -1) return -1; /* delete, line 113 */
406 : 845 : { int m8 = l - c; (void)m8; /* try, line 114 */
407 : 845 : ket = c; /* [, line 115 */
408 : 845 : { int m9 = l - c; (void)m9; /* or, line 115 */
409 [ + + ]: 845 : if (!(eq_s_b(2, s_11))) goto lab9; /* literal, line 115 */
410 : 133 : goto lab8;
411 : : lab9:
412 : 712 : c = l - m9;
413 [ + + ]: 712 : if (!(eq_s_b(2, s_12))) { c = l - m8; goto lab7; } /* literal, line 115 */
414 : : }
415 : : lab8:
416 : 200 : bra = c; /* ], line 115 */
417 : 200 : { int ret = r_R1(); /* call R1, line 115 */
418 [ - + ]: 200 : if (ret == 0) { c = l - m8; goto lab7; }
419 [ - + ]: 200 : if (ret < 0) return ret;
420 : : }
421 [ - + ]: 200 : if (slice_del() == -1) return -1; /* delete, line 115 */
422 : : lab7:
423 : : ;
424 : : }
425 : 845 : break;
426 : : case 4:
427 [ - + ]: 362 : if (slice_del() == -1) return -1; /* delete, line 119 */
428 : 362 : { int m10 = l - c; (void)m10; /* try, line 120 */
429 : 362 : ket = c; /* [, line 121 */
430 [ + - ][ + + ]: 362 : if (c - 1 <= lb || (p[c - 1] != 103 && p[c - 1] != 104)) { c = l - m10; goto lab10; } /* substring, line 121 */
[ + + ]
431 : 318 : among_var = find_among_b(s_pool, a_3, 2, 0, 0);
432 [ - + ]: 318 : if (!(among_var)) { c = l - m10; goto lab10; }
433 : 318 : bra = c; /* ], line 121 */
434 : 318 : { int ret = r_R2(); /* call R2, line 121 */
435 [ + + ]: 318 : if (ret == 0) { c = l - m10; goto lab10; }
436 [ - + ]: 217 : if (ret < 0) return ret;
437 : : }
438 [ - + - ]: 217 : switch(among_var) { /* among, line 121 */
439 : 0 : case 0: { c = l - m10; goto lab10; }
440 : : case 1:
441 [ - + ]: 217 : if (slice_del() == -1) return -1; /* delete, line 123 */
442 : : break;
443 : : }
444 : : lab10:
445 : : ;
446 : : }
447 : : break;
448 : : }
449 : : lab3:
450 : 105649 : c = l - m4;
451 : : }
452 : 105649 : return 1;
453 : : }
454 : :
455 : 105649 : int Xapian::InternalStemGerman::stem() { /* forwardmode */
456 : 105649 : { int c1 = c; /* do, line 134 */
457 : 105649 : { int ret = r_prelude(); /* call prelude, line 134 */
458 [ - + ]: 105649 : if (ret == 0) goto lab0;
459 [ - + ]: 105649 : if (ret < 0) return ret;
460 : : }
461 : : lab0:
462 : 105649 : c = c1;
463 : : }
464 : 105649 : { int c2 = c; /* do, line 135 */
465 : 105649 : { int ret = r_mark_regions(); /* call mark_regions, line 135 */
466 [ + + ]: 105649 : if (ret == 0) goto lab1;
467 [ - + ]: 80254 : if (ret < 0) return ret;
468 : : }
469 : : lab1:
470 : 105649 : c = c2;
471 : : }
472 : 105649 : lb = c; c = l; /* backwards, line 136 */
473 : :
474 : 105649 : { int m3 = l - c; (void)m3; /* do, line 137 */
475 : 105649 : { int ret = r_standard_suffix(); /* call standard_suffix, line 137 */
476 [ - + ]: 105649 : if (ret == 0) goto lab2;
477 [ - + ]: 105649 : if (ret < 0) return ret;
478 : : }
479 : : lab2:
480 : 105649 : c = l - m3;
481 : : }
482 : 105649 : c = lb;
483 : 105649 : { int c4 = c; /* do, line 138 */
484 : 105649 : { int ret = r_postlude(); /* call postlude, line 138 */
485 [ - + ]: 105649 : if (ret == 0) goto lab3;
486 [ - + ]: 105649 : if (ret < 0) return ret;
487 : : }
488 : : lab3:
489 : 105649 : c = c4;
490 : : }
491 : 105649 : return 1;
492 : : }
493 : :
494 : 3 : Xapian::InternalStemGerman::InternalStemGerman()
495 : 3 : : I_x(0), I_p2(0), I_p1(0)
496 : : {
497 : 3 : }
498 : :
499 : 3 : Xapian::InternalStemGerman::~InternalStemGerman()
500 : : {
501 [ + - ][ # # ]: 3 : }
[ # # ]
502 : :
503 : : std::string
504 : 1 : Xapian::InternalStemGerman::get_description() const
505 : : {
506 : 1 : return "german";
507 : : }
|