xapian-core  2.1.0
irish.cc
Go to the documentation of this file.
1 /* Generated from irish.sbl by Snowball 3.1.1 - https://snowballstem.org/ */
2 
3 #include <config.h>
4 
5 #define SNOWBALL_RUNTIME_THROW_EXCEPTIONS
6 #include "irish.h"
7 
8 #include <stddef.h>
9 
11 
12 static const symbol s_0[] = { 'f' };
13 static const symbol s_1[] = { 's' };
14 static const symbol s_2[] = { 'b' };
15 static const symbol s_3[] = { 'c' };
16 static const symbol s_4[] = { 'd' };
17 static const symbol s_5[] = { 'g' };
18 static const symbol s_6[] = { 'p' };
19 static const symbol s_7[] = { 't' };
20 static const symbol s_8[] = { 'm' };
21 static const symbol s_9[] = { 'a', 'r', 'c' };
22 static const symbol s_10[] = { 'g', 'i', 'n' };
23 static const symbol s_11[] = { 'g', 'r', 'a', 'f' };
24 static const symbol s_12[] = { 'p', 'a', 'i', 't', 'e' };
25 static const symbol s_13[] = { 0xC3, 0xB3, 'i', 'd' };
26 
27 static const symbol s_0_0[2] = { 'b', '\'' };
28 static const symbol s_0_1[2] = { 'b', 'h' };
29 static const symbol s_0_2[3] = { 'b', 'h', 'f' };
30 static const symbol s_0_3[2] = { 'b', 'p' };
31 static const symbol s_0_4[2] = { 'c', 'h' };
32 static const symbol s_0_5[2] = { 'd', '\'' };
33 static const symbol s_0_6[4] = { 'd', '\'', 'f', 'h' };
34 static const symbol s_0_7[2] = { 'd', 'h' };
35 static const symbol s_0_8[2] = { 'd', 't' };
36 static const symbol s_0_9[2] = { 'f', 'h' };
37 static const symbol s_0_10[2] = { 'g', 'c' };
38 static const symbol s_0_11[2] = { 'g', 'h' };
39 static const symbol s_0_12[2] = { 'h', '-' };
40 static const symbol s_0_13[2] = { 'm', '\'' };
41 static const symbol s_0_14[2] = { 'm', 'b' };
42 static const symbol s_0_15[2] = { 'm', 'h' };
43 static const symbol s_0_16[2] = { 'n', '-' };
44 static const symbol s_0_17[2] = { 'n', 'd' };
45 static const symbol s_0_18[2] = { 'n', 'g' };
46 static const symbol s_0_19[2] = { 'p', 'h' };
47 static const symbol s_0_20[2] = { 's', 'h' };
48 static const symbol s_0_21[2] = { 't', '-' };
49 static const symbol s_0_22[2] = { 't', 'h' };
50 static const symbol s_0_23[2] = { 't', 's' };
51 static const struct among a_0[24] = {
52 { 2, s_0_0, 0, 1, 0},
53 { 2, s_0_1, 0, 4, 0},
54 { 3, s_0_2, -1, 2, 0},
55 { 2, s_0_3, 0, 8, 0},
56 { 2, s_0_4, 0, 5, 0},
57 { 2, s_0_5, 0, 1, 0},
58 { 4, s_0_6, -1, 2, 0},
59 { 2, s_0_7, 0, 6, 0},
60 { 2, s_0_8, 0, 9, 0},
61 { 2, s_0_9, 0, 2, 0},
62 { 2, s_0_10, 0, 5, 0},
63 { 2, s_0_11, 0, 7, 0},
64 { 2, s_0_12, 0, 1, 0},
65 { 2, s_0_13, 0, 1, 0},
66 { 2, s_0_14, 0, 4, 0},
67 { 2, s_0_15, 0, 10, 0},
68 { 2, s_0_16, 0, 1, 0},
69 { 2, s_0_17, 0, 6, 0},
70 { 2, s_0_18, 0, 7, 0},
71 { 2, s_0_19, 0, 8, 0},
72 { 2, s_0_20, 0, 3, 0},
73 { 2, s_0_21, 0, 1, 0},
74 { 2, s_0_22, 0, 9, 0},
75 { 2, s_0_23, 0, 3, 0}
76 };
77 
78 static const symbol s_1_0[7] = { 0xC3, 0xAD, 'o', 'c', 'h', 't', 'a' };
79 static const symbol s_1_1[8] = { 'a', 0xC3, 0xAD, 'o', 'c', 'h', 't', 'a' };
80 static const symbol s_1_2[3] = { 'i', 'r', 'e' };
81 static const symbol s_1_3[4] = { 'a', 'i', 'r', 'e' };
82 static const symbol s_1_4[3] = { 'a', 'b', 'h' };
83 static const symbol s_1_5[4] = { 'e', 'a', 'b', 'h' };
84 static const symbol s_1_6[3] = { 'i', 'b', 'h' };
85 static const symbol s_1_7[4] = { 'a', 'i', 'b', 'h' };
86 static const symbol s_1_8[3] = { 'a', 'm', 'h' };
87 static const symbol s_1_9[4] = { 'e', 'a', 'm', 'h' };
88 static const symbol s_1_10[3] = { 'i', 'm', 'h' };
89 static const symbol s_1_11[4] = { 'a', 'i', 'm', 'h' };
90 static const symbol s_1_12[6] = { 0xC3, 0xAD, 'o', 'c', 'h', 't' };
91 static const symbol s_1_13[7] = { 'a', 0xC3, 0xAD, 'o', 'c', 'h', 't' };
92 static const symbol s_1_14[4] = { 'i', 'r', 0xC3, 0xAD };
93 static const symbol s_1_15[5] = { 'a', 'i', 'r', 0xC3, 0xAD };
94 static const struct among a_1[16] = {
95 { 7, s_1_0, 0, 1, 0},
96 { 8, s_1_1, -1, 1, 0},
97 { 3, s_1_2, 0, 2, 0},
98 { 4, s_1_3, -1, 2, 0},
99 { 3, s_1_4, 0, 1, 0},
100 { 4, s_1_5, -1, 1, 0},
101 { 3, s_1_6, 0, 1, 0},
102 { 4, s_1_7, -1, 1, 0},
103 { 3, s_1_8, 0, 1, 0},
104 { 4, s_1_9, -1, 1, 0},
105 { 3, s_1_10, 0, 1, 0},
106 { 4, s_1_11, -1, 1, 0},
107 { 6, s_1_12, 0, 1, 0},
108 { 7, s_1_13, -1, 1, 0},
109 { 4, s_1_14, 0, 2, 0},
110 { 5, s_1_15, -1, 2, 0}
111 };
112 
113 static const symbol s_2_0[9] = { 0xC3, 0xB3, 'i', 'd', 'e', 'a', 'c', 'h', 'a' };
114 static const symbol s_2_1[7] = { 'p', 'a', 't', 'a', 'c', 'h', 'a' };
115 static const symbol s_2_2[5] = { 'a', 'c', 'h', 't', 'a' };
116 static const symbol s_2_3[8] = { 'a', 'r', 'c', 'a', 'c', 'h', 't', 'a' };
117 static const symbol s_2_4[6] = { 'e', 'a', 'c', 'h', 't', 'a' };
118 static const symbol s_2_5[12] = { 'g', 'r', 'a', 'f', 'a', 0xC3, 0xAD, 'o', 'c', 'h', 't', 'a' };
119 static const symbol s_2_6[5] = { 'p', 'a', 'i', 't', 'e' };
120 static const symbol s_2_7[3] = { 'a', 'c', 'h' };
121 static const symbol s_2_8[4] = { 'e', 'a', 'c', 'h' };
122 static const symbol s_2_9[8] = { 0xC3, 0xB3, 'i', 'd', 'e', 'a', 'c', 'h' };
123 static const symbol s_2_10[7] = { 'g', 'i', 'n', 'e', 'a', 'c', 'h' };
124 static const symbol s_2_11[6] = { 'p', 'a', 't', 'a', 'c', 'h' };
125 static const symbol s_2_12[10] = { 'g', 'r', 'a', 'f', 'a', 0xC3, 0xAD, 'o', 'c', 'h' };
126 static const symbol s_2_13[7] = { 'p', 'a', 't', 'a', 'i', 'g', 'h' };
127 static const symbol s_2_14[7] = { 0xC3, 0xB3, 'i', 'd', 'i', 'g', 'h' };
128 static const symbol s_2_15[8] = { 'a', 'c', 'h', 't', 0xC3, 0xBA, 'i', 'l' };
129 static const symbol s_2_16[9] = { 'e', 'a', 'c', 'h', 't', 0xC3, 0xBA, 'i', 'l' };
130 static const symbol s_2_17[6] = { 'g', 'i', 'n', 'e', 'a', 's' };
131 static const symbol s_2_18[5] = { 'g', 'i', 'n', 'i', 's' };
132 static const symbol s_2_19[4] = { 'a', 'c', 'h', 't' };
133 static const symbol s_2_20[7] = { 'a', 'r', 'c', 'a', 'c', 'h', 't' };
134 static const symbol s_2_21[5] = { 'e', 'a', 'c', 'h', 't' };
135 static const symbol s_2_22[11] = { 'g', 'r', 'a', 'f', 'a', 0xC3, 0xAD, 'o', 'c', 'h', 't' };
136 static const symbol s_2_23[10] = { 'a', 'r', 'c', 'a', 'c', 'h', 't', 'a', 0xC3, 0xAD };
137 static const symbol s_2_24[14] = { 'g', 'r', 'a', 'f', 'a', 0xC3, 0xAD, 'o', 'c', 'h', 't', 'a', 0xC3, 0xAD };
138 static const struct among a_2[25] = {
139 { 9, s_2_0, 0, 6, 0},
140 { 7, s_2_1, 0, 5, 0},
141 { 5, s_2_2, 0, 1, 0},
142 { 8, s_2_3, -1, 2, 0},
143 { 6, s_2_4, -2, 1, 0},
144 { 12, s_2_5, 0, 4, 0},
145 { 5, s_2_6, 0, 5, 0},
146 { 3, s_2_7, 0, 1, 0},
147 { 4, s_2_8, -1, 1, 0},
148 { 8, s_2_9, -1, 6, 0},
149 { 7, s_2_10, -2, 3, 0},
150 { 6, s_2_11, -4, 5, 0},
151 { 10, s_2_12, 0, 4, 0},
152 { 7, s_2_13, 0, 5, 0},
153 { 7, s_2_14, 0, 6, 0},
154 { 8, s_2_15, 0, 1, 0},
155 { 9, s_2_16, -1, 1, 0},
156 { 6, s_2_17, 0, 3, 0},
157 { 5, s_2_18, 0, 3, 0},
158 { 4, s_2_19, 0, 1, 0},
159 { 7, s_2_20, -1, 2, 0},
160 { 5, s_2_21, -2, 1, 0},
161 { 11, s_2_22, 0, 4, 0},
162 { 10, s_2_23, 0, 2, 0},
163 { 14, s_2_24, 0, 4, 0}
164 };
165 
166 static const symbol s_3_0[4] = { 'i', 'm', 'i', 'd' };
167 static const symbol s_3_1[5] = { 'a', 'i', 'm', 'i', 'd' };
168 static const symbol s_3_2[5] = { 0xC3, 0xAD, 'm', 'i', 'd' };
169 static const symbol s_3_3[6] = { 'a', 0xC3, 0xAD, 'm', 'i', 'd' };
170 static const symbol s_3_4[3] = { 'a', 'd', 'h' };
171 static const symbol s_3_5[4] = { 'e', 'a', 'd', 'h' };
172 static const symbol s_3_6[5] = { 'f', 'a', 'i', 'd', 'h' };
173 static const symbol s_3_7[4] = { 'f', 'i', 'd', 'h' };
174 static const symbol s_3_8[4] = { 0xC3, 0xA1, 'i', 'l' };
175 static const symbol s_3_9[3] = { 'a', 'i', 'n' };
176 static const symbol s_3_10[4] = { 't', 'e', 'a', 'r' };
177 static const symbol s_3_11[3] = { 't', 'a', 'r' };
178 static const struct among a_3[12] = {
179 { 4, s_3_0, 0, 1, 0},
180 { 5, s_3_1, -1, 1, 0},
181 { 5, s_3_2, 0, 1, 0},
182 { 6, s_3_3, -1, 1, 0},
183 { 3, s_3_4, 0, 2, 0},
184 { 4, s_3_5, -1, 2, 0},
185 { 5, s_3_6, 0, 1, 0},
186 { 4, s_3_7, 0, 1, 0},
187 { 4, s_3_8, 0, 2, 0},
188 { 3, s_3_9, 0, 2, 0},
189 { 4, s_3_10, 0, 2, 0},
190 { 3, s_3_11, 0, 2, 0}
191 };
192 
193 static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 4, 2 };
194 
196  int among_var;
197  int i_p2;
198  int i_p1;
199  int i_pV;
200  {
201  int v_1 = z->c;
202  z->bra = z->c;
203  among_var = find_among(z, a_0, 24, 0);
204  if (!among_var) goto lab0;
205  z->ket = z->c;
206  switch (among_var) {
207  case 1:
208  slice_del(z);
209  break;
210  case 2:
211  slice_from_s(z, 1, s_0);
212  break;
213  case 3:
214  slice_from_s(z, 1, s_1);
215  break;
216  case 4:
217  slice_from_s(z, 1, s_2);
218  break;
219  case 5:
220  slice_from_s(z, 1, s_3);
221  break;
222  case 6:
223  slice_from_s(z, 1, s_4);
224  break;
225  case 7:
226  slice_from_s(z, 1, s_5);
227  break;
228  case 8:
229  slice_from_s(z, 1, s_6);
230  break;
231  case 9:
232  slice_from_s(z, 1, s_7);
233  break;
234  case 10:
235  slice_from_s(z, 1, s_8);
236  break;
237  }
238  lab0:
239  z->c = v_1;
240  }
241  i_pV = z->l;
242  i_p1 = z->l;
243  i_p2 = z->l;
244  {
245  int v_2 = z->c;
246  {
247  int ret = out_grouping_U(z, g_v, 97, 250, 1);
248  if (ret < 0) goto lab2;
249  z->c += ret;
250  }
251  i_pV = z->c;
252  {
253  int ret = in_grouping_U(z, g_v, 97, 250, 1);
254  if (ret < 0) goto lab2;
255  z->c += ret;
256  }
257  i_p1 = z->c;
258  {
259  int ret = out_grouping_U(z, g_v, 97, 250, 1);
260  if (ret < 0) goto lab2;
261  z->c += ret;
262  }
263  {
264  int ret = in_grouping_U(z, g_v, 97, 250, 1);
265  if (ret < 0) goto lab2;
266  z->c += ret;
267  }
268  i_p2 = z->c;
269  lab2:
270  z->c = v_2;
271  }
272  z->lb = z->c; z->c = z->l;
273  {
274  int v_3 = z->l - z->c;
275  z->ket = z->c;
276  among_var = find_among_b(z, a_1, 16, 0);
277  if (!among_var) goto lab3;
278  z->bra = z->c;
279  switch (among_var) {
280  case 1:
281  if (i_p1 > z->c) goto lab3;
282  slice_del(z);
283  break;
284  case 2:
285  if (i_p2 > z->c) goto lab3;
286  slice_del(z);
287  break;
288  }
289  lab3:
290  z->c = z->l - v_3;
291  }
292  {
293  int v_4 = z->l - z->c;
294  z->ket = z->c;
295  among_var = find_among_b(z, a_2, 25, 0);
296  if (!among_var) goto lab4;
297  z->bra = z->c;
298  switch (among_var) {
299  case 1:
300  if (i_p2 > z->c) goto lab4;
301  slice_del(z);
302  break;
303  case 2:
304  slice_from_s(z, 3, s_9);
305  break;
306  case 3:
307  slice_from_s(z, 3, s_10);
308  break;
309  case 4:
310  slice_from_s(z, 4, s_11);
311  break;
312  case 5:
313  slice_from_s(z, 5, s_12);
314  break;
315  case 6:
316  slice_from_s(z, 4, s_13);
317  break;
318  }
319  lab4:
320  z->c = z->l - v_4;
321  }
322  {
323  int v_5 = z->l - z->c;
324  z->ket = z->c;
325  if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((282896 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab5;
326  among_var = find_among_b(z, a_3, 12, 0);
327  if (!among_var) goto lab5;
328  z->bra = z->c;
329  switch (among_var) {
330  case 1:
331  if (i_pV > z->c) goto lab5;
332  slice_del(z);
333  break;
334  case 2:
335  if (i_p1 > z->c) goto lab5;
336  slice_del(z);
337  break;
338  }
339  lab5:
340  z->c = z->l - v_5;
341  }
342  z->c = z->lb;
343  return 1;
344 }
unsigned char symbol
Definition: api.h:4
static int stem(struct SN_env *z)
Definition: irish.cc:195
static const symbol s_2[]
Definition: irish.cc:14
static const symbol s_0_4[2]
Definition: irish.cc:31
static const symbol s_0_2[3]
Definition: irish.cc:29
static const symbol s_3_5[4]
Definition: irish.cc:171
static const symbol s_2_17[6]
Definition: irish.cc:130
static const symbol s_3_11[3]
Definition: irish.cc:177
static const symbol s_3_9[3]
Definition: irish.cc:175
static const symbol s_2_6[5]
Definition: irish.cc:119
static const symbol s_3_2[5]
Definition: irish.cc:168
static const symbol s_1_8[3]
Definition: irish.cc:86
static const symbol s_0_5[2]
Definition: irish.cc:32
static const symbol s_4[]
Definition: irish.cc:16
static const symbol s_0_23[2]
Definition: irish.cc:50
static const symbol s_2_23[10]
Definition: irish.cc:136
static const symbol s_1_10[3]
Definition: irish.cc:88
static const symbol s_1_6[3]
Definition: irish.cc:84
static const symbol s_0_13[2]
Definition: irish.cc:40
static const symbol s_3_1[5]
Definition: irish.cc:167
static const symbol s_1_1[8]
Definition: irish.cc:79
static const struct among a_1[16]
Definition: irish.cc:94
static const symbol s_1_5[4]
Definition: irish.cc:83
static const symbol s_1_13[7]
Definition: irish.cc:91
static const symbol s_0_8[2]
Definition: irish.cc:35
static const symbol s_2_3[8]
Definition: irish.cc:116
static const struct among a_2[25]
Definition: irish.cc:138
static const symbol s_2_14[7]
Definition: irish.cc:127
static const symbol s_1_14[4]
Definition: irish.cc:92
static const symbol s_0_1[2]
Definition: irish.cc:28
static const symbol s_1_3[4]
Definition: irish.cc:81
static const symbol s_3_0[4]
Definition: irish.cc:166
static const symbol s_3_6[5]
Definition: irish.cc:172
static const symbol s_6[]
Definition: irish.cc:18
static const symbol s_0_15[2]
Definition: irish.cc:42
static const symbol s_0_0[2]
Definition: irish.cc:27
static const symbol s_2_5[12]
Definition: irish.cc:118
static const symbol s_3[]
Definition: irish.cc:15
static const symbol s_0_17[2]
Definition: irish.cc:44
static const symbol s_2_15[8]
Definition: irish.cc:128
static const symbol s_0_7[2]
Definition: irish.cc:34
static const symbol s_2_4[6]
Definition: irish.cc:117
static const symbol s_0_16[2]
Definition: irish.cc:43
static const symbol s_7[]
Definition: irish.cc:19
static const symbol s_13[]
Definition: irish.cc:25
Xapian::Internal::Snowball::Irish::SN_local SN_local
Definition: irish.cc:10
static const symbol s_3_10[4]
Definition: irish.cc:176
static const symbol s_1_0[7]
Definition: irish.cc:78
static const symbol s_0_18[2]
Definition: irish.cc:45
static const symbol s_0_21[2]
Definition: irish.cc:48
static const symbol s_2_12[10]
Definition: irish.cc:125
static const symbol s_2_10[7]
Definition: irish.cc:123
static const struct among a_3[12]
Definition: irish.cc:178
static const symbol s_0_11[2]
Definition: irish.cc:38
static const symbol s_0_6[4]
Definition: irish.cc:33
static const symbol s_2_7[3]
Definition: irish.cc:120
static const symbol s_0_20[2]
Definition: irish.cc:47
static const symbol s_2_22[11]
Definition: irish.cc:135
static const struct among a_0[24]
Definition: irish.cc:51
static const symbol s_1_11[4]
Definition: irish.cc:89
static const symbol s_2_1[7]
Definition: irish.cc:114
static const symbol s_2_18[5]
Definition: irish.cc:131
static const symbol s_10[]
Definition: irish.cc:22
static const symbol s_2_9[8]
Definition: irish.cc:122
static const symbol s_1[]
Definition: irish.cc:13
static const symbol s_3_4[3]
Definition: irish.cc:170
static const symbol s_1_2[3]
Definition: irish.cc:80
static const symbol s_2_0[9]
Definition: irish.cc:113
static const symbol s_0_14[2]
Definition: irish.cc:41
static const symbol s_1_9[4]
Definition: irish.cc:87
static const symbol s_2_20[7]
Definition: irish.cc:133
static const symbol s_11[]
Definition: irish.cc:23
static const symbol s_12[]
Definition: irish.cc:24
static const symbol s_1_7[4]
Definition: irish.cc:85
static const symbol s_3_8[4]
Definition: irish.cc:174
static const symbol s_2_8[4]
Definition: irish.cc:121
static const symbol s_1_12[6]
Definition: irish.cc:90
static const symbol s_2_21[5]
Definition: irish.cc:134
static const symbol s_0_12[2]
Definition: irish.cc:39
static const symbol s_1_4[3]
Definition: irish.cc:82
static const symbol s_3_7[4]
Definition: irish.cc:173
static const symbol s_0_10[2]
Definition: irish.cc:37
static const symbol s_2_16[9]
Definition: irish.cc:129
static const symbol s_0_22[2]
Definition: irish.cc:49
static const symbol s_1_15[5]
Definition: irish.cc:93
static const symbol s_0_3[2]
Definition: irish.cc:30
static const unsigned char g_v[]
Definition: irish.cc:193
static const symbol s_3_3[6]
Definition: irish.cc:169
static const symbol s_8[]
Definition: irish.cc:20
static const symbol s_9[]
Definition: irish.cc:21
static const symbol s_0_9[2]
Definition: irish.cc:36
static const symbol s_2_11[6]
Definition: irish.cc:124
static const symbol s_5[]
Definition: irish.cc:17
static const symbol s_2_13[7]
Definition: irish.cc:126
static const symbol s_2_24[14]
Definition: irish.cc:137
static const symbol s_0_19[2]
Definition: irish.cc:46
static const symbol s_2_2[5]
Definition: irish.cc:115
static const symbol s_2_19[4]
Definition: irish.cc:132
static const symbol s_0[]
Definition: irish.cc:12
int out_grouping_U(struct SN_env *z, const unsigned char *s, int min, int max, int repeat)
int in_grouping_U(struct SN_env *z, const unsigned char *s, int min, int max, int repeat)
SNOWBALL_ERR slice_from_s(struct SN_env *z, int s_size, const symbol *s)
int find_among_b(struct SN_env *z, const struct among *v, int v_size, int(*call_among_func)(struct SN_env *))
SNOWBALL_ERR slice_del(struct SN_env *z)
int find_among(struct SN_env *z, const struct among *v, int v_size, int(*call_among_func)(struct SN_env *))
Definition: api.h:12
int lb
Definition: api.h:14
symbol * p
Definition: api.h:13
int ket
Definition: api.h:14
int c
Definition: api.h:14
int bra
Definition: api.h:14
int l
Definition: api.h:14
Definition: header.h:295