xapian-core  2.1.0
russian.cc
Go to the documentation of this file.
1 /* Generated from russian.sbl by Snowball 3.1.1 - https://snowballstem.org/ */
2 
3 #include <config.h>
4 
5 #define SNOWBALL_RUNTIME_THROW_EXCEPTIONS
6 #include "russian.h"
7 
8 #include <stddef.h>
9 
11 
12 static const symbol s_0[] = { 0xD1, 0x91 };
13 static const symbol s_1[] = { 0xD0, 0xB5 };
14 static const symbol s_2[] = { 0xD0, 0xB0 };
15 static const symbol s_3[] = { 0xD1, 0x8F };
16 static const symbol s_4[] = { 0xD0, 0xB0 };
17 static const symbol s_5[] = { 0xD1, 0x8F };
18 static const symbol s_6[] = { 0xD0, 0xB0 };
19 static const symbol s_7[] = { 0xD1, 0x8F };
20 static const symbol s_8[] = { 0xD0, 0xB8 };
21 static const symbol s_9[] = { 0xD0, 0xBD };
22 static const symbol s_10[] = { 0xD0, 0xBD };
23 static const symbol s_11[] = { 0xD0, 0xBD };
24 
25 static const symbol s_0_0[10] = { 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8, 0xD1, 0x81, 0xD1, 0x8C };
26 static const symbol s_0_1[12] = { 0xD1, 0x8B, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8, 0xD1, 0x81, 0xD1, 0x8C };
27 static const symbol s_0_2[12] = { 0xD0, 0xB8, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8, 0xD1, 0x81, 0xD1, 0x8C };
28 static const symbol s_0_3[2] = { 0xD0, 0xB2 };
29 static const symbol s_0_4[4] = { 0xD1, 0x8B, 0xD0, 0xB2 };
30 static const symbol s_0_5[4] = { 0xD0, 0xB8, 0xD0, 0xB2 };
31 static const symbol s_0_6[6] = { 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8 };
32 static const symbol s_0_7[8] = { 0xD1, 0x8B, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8 };
33 static const symbol s_0_8[8] = { 0xD0, 0xB8, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8 };
34 static const struct among a_0[9] = {
35 { 10, s_0_0, 0, 1, 0},
36 { 12, s_0_1, -1, 2, 0},
37 { 12, s_0_2, -2, 2, 0},
38 { 2, s_0_3, 0, 1, 0},
39 { 4, s_0_4, -1, 2, 0},
40 { 4, s_0_5, -2, 2, 0},
41 { 6, s_0_6, 0, 1, 0},
42 { 8, s_0_7, -1, 2, 0},
43 { 8, s_0_8, -2, 2, 0}
44 };
45 
46 static const symbol s_1_0[6] = { 0xD0, 0xB5, 0xD0, 0xBC, 0xD1, 0x83 };
47 static const symbol s_1_1[6] = { 0xD0, 0xBE, 0xD0, 0xBC, 0xD1, 0x83 };
48 static const symbol s_1_2[4] = { 0xD1, 0x8B, 0xD1, 0x85 };
49 static const symbol s_1_3[4] = { 0xD0, 0xB8, 0xD1, 0x85 };
50 static const symbol s_1_4[4] = { 0xD1, 0x83, 0xD1, 0x8E };
51 static const symbol s_1_5[4] = { 0xD1, 0x8E, 0xD1, 0x8E };
52 static const symbol s_1_6[4] = { 0xD0, 0xB5, 0xD1, 0x8E };
53 static const symbol s_1_7[4] = { 0xD0, 0xBE, 0xD1, 0x8E };
54 static const symbol s_1_8[4] = { 0xD1, 0x8F, 0xD1, 0x8F };
55 static const symbol s_1_9[4] = { 0xD0, 0xB0, 0xD1, 0x8F };
56 static const symbol s_1_10[4] = { 0xD1, 0x8B, 0xD0, 0xB5 };
57 static const symbol s_1_11[4] = { 0xD0, 0xB5, 0xD0, 0xB5 };
58 static const symbol s_1_12[4] = { 0xD0, 0xB8, 0xD0, 0xB5 };
59 static const symbol s_1_13[4] = { 0xD0, 0xBE, 0xD0, 0xB5 };
60 static const symbol s_1_14[6] = { 0xD1, 0x8B, 0xD0, 0xBC, 0xD0, 0xB8 };
61 static const symbol s_1_15[6] = { 0xD0, 0xB8, 0xD0, 0xBC, 0xD0, 0xB8 };
62 static const symbol s_1_16[4] = { 0xD1, 0x8B, 0xD0, 0xB9 };
63 static const symbol s_1_17[4] = { 0xD0, 0xB5, 0xD0, 0xB9 };
64 static const symbol s_1_18[4] = { 0xD0, 0xB8, 0xD0, 0xB9 };
65 static const symbol s_1_19[4] = { 0xD0, 0xBE, 0xD0, 0xB9 };
66 static const symbol s_1_20[4] = { 0xD1, 0x8B, 0xD0, 0xBC };
67 static const symbol s_1_21[4] = { 0xD0, 0xB5, 0xD0, 0xBC };
68 static const symbol s_1_22[4] = { 0xD0, 0xB8, 0xD0, 0xBC };
69 static const symbol s_1_23[4] = { 0xD0, 0xBE, 0xD0, 0xBC };
70 static const symbol s_1_24[6] = { 0xD0, 0xB5, 0xD0, 0xB3, 0xD0, 0xBE };
71 static const symbol s_1_25[6] = { 0xD0, 0xBE, 0xD0, 0xB3, 0xD0, 0xBE };
72 static const struct among a_1[26] = {
73 { 6, s_1_0, 0, 1, 0},
74 { 6, s_1_1, 0, 1, 0},
75 { 4, s_1_2, 0, 1, 0},
76 { 4, s_1_3, 0, 1, 0},
77 { 4, s_1_4, 0, 1, 0},
78 { 4, s_1_5, 0, 1, 0},
79 { 4, s_1_6, 0, 1, 0},
80 { 4, s_1_7, 0, 1, 0},
81 { 4, s_1_8, 0, 1, 0},
82 { 4, s_1_9, 0, 1, 0},
83 { 4, s_1_10, 0, 1, 0},
84 { 4, s_1_11, 0, 1, 0},
85 { 4, s_1_12, 0, 1, 0},
86 { 4, s_1_13, 0, 1, 0},
87 { 6, s_1_14, 0, 1, 0},
88 { 6, s_1_15, 0, 1, 0},
89 { 4, s_1_16, 0, 1, 0},
90 { 4, s_1_17, 0, 1, 0},
91 { 4, s_1_18, 0, 1, 0},
92 { 4, s_1_19, 0, 1, 0},
93 { 4, s_1_20, 0, 1, 0},
94 { 4, s_1_21, 0, 1, 0},
95 { 4, s_1_22, 0, 1, 0},
96 { 4, s_1_23, 0, 1, 0},
97 { 6, s_1_24, 0, 1, 0},
98 { 6, s_1_25, 0, 1, 0}
99 };
100 
101 static const symbol s_2_0[4] = { 0xD0, 0xB2, 0xD1, 0x88 };
102 static const symbol s_2_1[6] = { 0xD1, 0x8B, 0xD0, 0xB2, 0xD1, 0x88 };
103 static const symbol s_2_2[6] = { 0xD0, 0xB8, 0xD0, 0xB2, 0xD1, 0x88 };
104 static const symbol s_2_3[2] = { 0xD1, 0x89 };
105 static const symbol s_2_4[4] = { 0xD1, 0x8E, 0xD1, 0x89 };
106 static const symbol s_2_5[6] = { 0xD1, 0x83, 0xD1, 0x8E, 0xD1, 0x89 };
107 static const symbol s_2_6[4] = { 0xD0, 0xB5, 0xD0, 0xBC };
108 static const symbol s_2_7[4] = { 0xD0, 0xBD, 0xD0, 0xBD };
109 static const struct among a_2[8] = {
110 { 4, s_2_0, 0, 1, 0},
111 { 6, s_2_1, -1, 2, 0},
112 { 6, s_2_2, -2, 2, 0},
113 { 2, s_2_3, 0, 1, 0},
114 { 4, s_2_4, -1, 1, 0},
115 { 6, s_2_5, -1, 2, 0},
116 { 4, s_2_6, 0, 1, 0},
117 { 4, s_2_7, 0, 1, 0}
118 };
119 
120 static const symbol s_3_0[4] = { 0xD1, 0x81, 0xD1, 0x8C };
121 static const symbol s_3_1[4] = { 0xD1, 0x81, 0xD1, 0x8F };
122 static const struct among a_3[2] = {
123 { 4, s_3_0, 0, 1, 0},
124 { 4, s_3_1, 0, 1, 0}
125 };
126 
127 static const symbol s_4_0[4] = { 0xD1, 0x8B, 0xD1, 0x82 };
128 static const symbol s_4_1[4] = { 0xD1, 0x8E, 0xD1, 0x82 };
129 static const symbol s_4_2[6] = { 0xD1, 0x83, 0xD1, 0x8E, 0xD1, 0x82 };
130 static const symbol s_4_3[4] = { 0xD1, 0x8F, 0xD1, 0x82 };
131 static const symbol s_4_4[4] = { 0xD0, 0xB5, 0xD1, 0x82 };
132 static const symbol s_4_5[6] = { 0xD1, 0x83, 0xD0, 0xB5, 0xD1, 0x82 };
133 static const symbol s_4_6[4] = { 0xD0, 0xB8, 0xD1, 0x82 };
134 static const symbol s_4_7[4] = { 0xD0, 0xBD, 0xD1, 0x8B };
135 static const symbol s_4_8[6] = { 0xD0, 0xB5, 0xD0, 0xBD, 0xD1, 0x8B };
136 static const symbol s_4_9[4] = { 0xD1, 0x82, 0xD1, 0x8C };
137 static const symbol s_4_10[6] = { 0xD1, 0x8B, 0xD1, 0x82, 0xD1, 0x8C };
138 static const symbol s_4_11[6] = { 0xD0, 0xB8, 0xD1, 0x82, 0xD1, 0x8C };
139 static const symbol s_4_12[6] = { 0xD0, 0xB5, 0xD1, 0x88, 0xD1, 0x8C };
140 static const symbol s_4_13[6] = { 0xD0, 0xB8, 0xD1, 0x88, 0xD1, 0x8C };
141 static const symbol s_4_14[2] = { 0xD1, 0x8E };
142 static const symbol s_4_15[4] = { 0xD1, 0x83, 0xD1, 0x8E };
143 static const symbol s_4_16[4] = { 0xD0, 0xBB, 0xD0, 0xB0 };
144 static const symbol s_4_17[6] = { 0xD1, 0x8B, 0xD0, 0xBB, 0xD0, 0xB0 };
145 static const symbol s_4_18[6] = { 0xD0, 0xB8, 0xD0, 0xBB, 0xD0, 0xB0 };
146 static const symbol s_4_19[4] = { 0xD0, 0xBD, 0xD0, 0xB0 };
147 static const symbol s_4_20[6] = { 0xD0, 0xB5, 0xD0, 0xBD, 0xD0, 0xB0 };
148 static const symbol s_4_21[6] = { 0xD0, 0xB5, 0xD1, 0x82, 0xD0, 0xB5 };
149 static const symbol s_4_22[6] = { 0xD0, 0xB8, 0xD1, 0x82, 0xD0, 0xB5 };
150 static const symbol s_4_23[6] = { 0xD0, 0xB9, 0xD1, 0x82, 0xD0, 0xB5 };
151 static const symbol s_4_24[8] = { 0xD1, 0x83, 0xD0, 0xB9, 0xD1, 0x82, 0xD0, 0xB5 };
152 static const symbol s_4_25[8] = { 0xD0, 0xB5, 0xD0, 0xB9, 0xD1, 0x82, 0xD0, 0xB5 };
153 static const symbol s_4_26[4] = { 0xD0, 0xBB, 0xD0, 0xB8 };
154 static const symbol s_4_27[6] = { 0xD1, 0x8B, 0xD0, 0xBB, 0xD0, 0xB8 };
155 static const symbol s_4_28[6] = { 0xD0, 0xB8, 0xD0, 0xBB, 0xD0, 0xB8 };
156 static const symbol s_4_29[2] = { 0xD0, 0xB9 };
157 static const symbol s_4_30[4] = { 0xD1, 0x83, 0xD0, 0xB9 };
158 static const symbol s_4_31[4] = { 0xD0, 0xB5, 0xD0, 0xB9 };
159 static const symbol s_4_32[2] = { 0xD0, 0xBB };
160 static const symbol s_4_33[4] = { 0xD1, 0x8B, 0xD0, 0xBB };
161 static const symbol s_4_34[4] = { 0xD0, 0xB8, 0xD0, 0xBB };
162 static const symbol s_4_35[4] = { 0xD1, 0x8B, 0xD0, 0xBC };
163 static const symbol s_4_36[4] = { 0xD0, 0xB5, 0xD0, 0xBC };
164 static const symbol s_4_37[4] = { 0xD0, 0xB8, 0xD0, 0xBC };
165 static const symbol s_4_38[2] = { 0xD0, 0xBD };
166 static const symbol s_4_39[4] = { 0xD0, 0xB5, 0xD0, 0xBD };
167 static const symbol s_4_40[4] = { 0xD0, 0xBB, 0xD0, 0xBE };
168 static const symbol s_4_41[6] = { 0xD1, 0x8B, 0xD0, 0xBB, 0xD0, 0xBE };
169 static const symbol s_4_42[6] = { 0xD0, 0xB8, 0xD0, 0xBB, 0xD0, 0xBE };
170 static const symbol s_4_43[4] = { 0xD0, 0xBD, 0xD0, 0xBE };
171 static const symbol s_4_44[6] = { 0xD0, 0xB5, 0xD0, 0xBD, 0xD0, 0xBE };
172 static const symbol s_4_45[6] = { 0xD0, 0xBD, 0xD0, 0xBD, 0xD0, 0xBE };
173 static const struct among a_4[46] = {
174 { 4, s_4_0, 0, 2, 0},
175 { 4, s_4_1, 0, 1, 0},
176 { 6, s_4_2, -1, 2, 0},
177 { 4, s_4_3, 0, 2, 0},
178 { 4, s_4_4, 0, 1, 0},
179 { 6, s_4_5, -1, 2, 0},
180 { 4, s_4_6, 0, 2, 0},
181 { 4, s_4_7, 0, 1, 0},
182 { 6, s_4_8, -1, 2, 0},
183 { 4, s_4_9, 0, 1, 0},
184 { 6, s_4_10, -1, 2, 0},
185 { 6, s_4_11, -2, 2, 0},
186 { 6, s_4_12, 0, 1, 0},
187 { 6, s_4_13, 0, 2, 0},
188 { 2, s_4_14, 0, 2, 0},
189 { 4, s_4_15, -1, 2, 0},
190 { 4, s_4_16, 0, 1, 0},
191 { 6, s_4_17, -1, 2, 0},
192 { 6, s_4_18, -2, 2, 0},
193 { 4, s_4_19, 0, 1, 0},
194 { 6, s_4_20, -1, 2, 0},
195 { 6, s_4_21, 0, 1, 0},
196 { 6, s_4_22, 0, 2, 0},
197 { 6, s_4_23, 0, 1, 0},
198 { 8, s_4_24, -1, 2, 0},
199 { 8, s_4_25, -2, 2, 0},
200 { 4, s_4_26, 0, 1, 0},
201 { 6, s_4_27, -1, 2, 0},
202 { 6, s_4_28, -2, 2, 0},
203 { 2, s_4_29, 0, 1, 0},
204 { 4, s_4_30, -1, 2, 0},
205 { 4, s_4_31, -2, 2, 0},
206 { 2, s_4_32, 0, 1, 0},
207 { 4, s_4_33, -1, 2, 0},
208 { 4, s_4_34, -2, 2, 0},
209 { 4, s_4_35, 0, 2, 0},
210 { 4, s_4_36, 0, 1, 0},
211 { 4, s_4_37, 0, 2, 0},
212 { 2, s_4_38, 0, 1, 0},
213 { 4, s_4_39, -1, 2, 0},
214 { 4, s_4_40, 0, 1, 0},
215 { 6, s_4_41, -1, 2, 0},
216 { 6, s_4_42, -2, 2, 0},
217 { 4, s_4_43, 0, 1, 0},
218 { 6, s_4_44, -1, 2, 0},
219 { 6, s_4_45, -2, 1, 0}
220 };
221 
222 static const symbol s_5_0[2] = { 0xD1, 0x83 };
223 static const symbol s_5_1[4] = { 0xD1, 0x8F, 0xD1, 0x85 };
224 static const symbol s_5_2[6] = { 0xD0, 0xB8, 0xD1, 0x8F, 0xD1, 0x85 };
225 static const symbol s_5_3[4] = { 0xD0, 0xB0, 0xD1, 0x85 };
226 static const symbol s_5_4[2] = { 0xD1, 0x8B };
227 static const symbol s_5_5[2] = { 0xD1, 0x8C };
228 static const symbol s_5_6[2] = { 0xD1, 0x8E };
229 static const symbol s_5_7[4] = { 0xD1, 0x8C, 0xD1, 0x8E };
230 static const symbol s_5_8[4] = { 0xD0, 0xB8, 0xD1, 0x8E };
231 static const symbol s_5_9[2] = { 0xD1, 0x8F };
232 static const symbol s_5_10[4] = { 0xD1, 0x8C, 0xD1, 0x8F };
233 static const symbol s_5_11[4] = { 0xD0, 0xB8, 0xD1, 0x8F };
234 static const symbol s_5_12[2] = { 0xD0, 0xB0 };
235 static const symbol s_5_13[4] = { 0xD0, 0xB5, 0xD0, 0xB2 };
236 static const symbol s_5_14[4] = { 0xD0, 0xBE, 0xD0, 0xB2 };
237 static const symbol s_5_15[2] = { 0xD0, 0xB5 };
238 static const symbol s_5_16[4] = { 0xD1, 0x8C, 0xD0, 0xB5 };
239 static const symbol s_5_17[4] = { 0xD0, 0xB8, 0xD0, 0xB5 };
240 static const symbol s_5_18[2] = { 0xD0, 0xB8 };
241 static const symbol s_5_19[4] = { 0xD0, 0xB5, 0xD0, 0xB8 };
242 static const symbol s_5_20[4] = { 0xD0, 0xB8, 0xD0, 0xB8 };
243 static const symbol s_5_21[6] = { 0xD1, 0x8F, 0xD0, 0xBC, 0xD0, 0xB8 };
244 static const symbol s_5_22[8] = { 0xD0, 0xB8, 0xD1, 0x8F, 0xD0, 0xBC, 0xD0, 0xB8 };
245 static const symbol s_5_23[6] = { 0xD0, 0xB0, 0xD0, 0xBC, 0xD0, 0xB8 };
246 static const symbol s_5_24[2] = { 0xD0, 0xB9 };
247 static const symbol s_5_25[4] = { 0xD0, 0xB5, 0xD0, 0xB9 };
248 static const symbol s_5_26[6] = { 0xD0, 0xB8, 0xD0, 0xB5, 0xD0, 0xB9 };
249 static const symbol s_5_27[4] = { 0xD0, 0xB8, 0xD0, 0xB9 };
250 static const symbol s_5_28[4] = { 0xD0, 0xBE, 0xD0, 0xB9 };
251 static const symbol s_5_29[4] = { 0xD1, 0x8F, 0xD0, 0xBC };
252 static const symbol s_5_30[6] = { 0xD0, 0xB8, 0xD1, 0x8F, 0xD0, 0xBC };
253 static const symbol s_5_31[4] = { 0xD0, 0xB0, 0xD0, 0xBC };
254 static const symbol s_5_32[4] = { 0xD0, 0xB5, 0xD0, 0xBC };
255 static const symbol s_5_33[6] = { 0xD0, 0xB8, 0xD0, 0xB5, 0xD0, 0xBC };
256 static const symbol s_5_34[4] = { 0xD0, 0xBE, 0xD0, 0xBC };
257 static const symbol s_5_35[2] = { 0xD0, 0xBE };
258 static const struct among a_5[36] = {
259 { 2, s_5_0, 0, 1, 0},
260 { 4, s_5_1, 0, 1, 0},
261 { 6, s_5_2, -1, 1, 0},
262 { 4, s_5_3, 0, 1, 0},
263 { 2, s_5_4, 0, 1, 0},
264 { 2, s_5_5, 0, 1, 0},
265 { 2, s_5_6, 0, 1, 0},
266 { 4, s_5_7, -1, 1, 0},
267 { 4, s_5_8, -2, 1, 0},
268 { 2, s_5_9, 0, 1, 0},
269 { 4, s_5_10, -1, 1, 0},
270 { 4, s_5_11, -2, 1, 0},
271 { 2, s_5_12, 0, 1, 0},
272 { 4, s_5_13, 0, 1, 0},
273 { 4, s_5_14, 0, 1, 0},
274 { 2, s_5_15, 0, 1, 0},
275 { 4, s_5_16, -1, 1, 0},
276 { 4, s_5_17, -2, 1, 0},
277 { 2, s_5_18, 0, 1, 0},
278 { 4, s_5_19, -1, 1, 0},
279 { 4, s_5_20, -2, 1, 0},
280 { 6, s_5_21, -3, 1, 0},
281 { 8, s_5_22, -1, 1, 0},
282 { 6, s_5_23, -5, 1, 0},
283 { 2, s_5_24, 0, 1, 0},
284 { 4, s_5_25, -1, 1, 0},
285 { 6, s_5_26, -1, 1, 0},
286 { 4, s_5_27, -3, 1, 0},
287 { 4, s_5_28, -4, 1, 0},
288 { 4, s_5_29, 0, 1, 0},
289 { 6, s_5_30, -1, 1, 0},
290 { 4, s_5_31, 0, 1, 0},
291 { 4, s_5_32, 0, 1, 0},
292 { 6, s_5_33, -1, 1, 0},
293 { 4, s_5_34, 0, 1, 0},
294 { 2, s_5_35, 0, 1, 0}
295 };
296 
297 static const symbol s_6_0[6] = { 0xD0, 0xBE, 0xD1, 0x81, 0xD1, 0x82 };
298 static const symbol s_6_1[8] = { 0xD0, 0xBE, 0xD1, 0x81, 0xD1, 0x82, 0xD1, 0x8C };
299 static const struct among a_6[2] = {
300 { 6, s_6_0, 0, 1, 0},
301 { 8, s_6_1, 0, 1, 0}
302 };
303 
304 static const symbol s_7_0[6] = { 0xD0, 0xB5, 0xD0, 0xB9, 0xD1, 0x88 };
305 static const symbol s_7_1[2] = { 0xD1, 0x8C };
306 static const symbol s_7_2[8] = { 0xD0, 0xB5, 0xD0, 0xB9, 0xD1, 0x88, 0xD0, 0xB5 };
307 static const symbol s_7_3[2] = { 0xD0, 0xBD };
308 static const struct among a_7[4] = {
309 { 6, s_7_0, 0, 1, 0},
310 { 2, s_7_1, 0, 3, 0},
311 { 8, s_7_2, 0, 1, 0},
312 { 2, s_7_3, 0, 2, 0}
313 };
314 
315 static const unsigned char g_v[] = { 33, 65, 8, 232 };
316 
318  int among_var;
319  int i_p2;
320  int i_pV;
321  {
322  int v_1 = z->c;
323  while (1) {
324  int v_2 = z->c;
325  while (1) {
326  int v_3 = z->c;
327  z->bra = z->c;
328  if (!(eq_s(z, 2, s_0))) goto lab2;
329  z->ket = z->c;
330  z->c = v_3;
331  break;
332  lab2:
333  z->c = v_3;
334  {
335  int ret = skip_utf8(z->p, z->c, z->l, 1);
336  if (ret < 0) goto lab1;
337  z->c = ret;
338  }
339  }
340  slice_from_s(z, 2, s_1);
341  continue;
342  lab1:
343  z->c = v_2;
344  break;
345  }
346  z->c = v_1;
347  }
348  i_pV = z->l;
349  i_p2 = z->l;
350  {
351  int v_4 = z->c;
352  {
353  int ret = out_grouping_U(z, g_v, 1072, 1103, 1);
354  if (ret < 0) goto lab4;
355  z->c += ret;
356  }
357  i_pV = z->c;
358  {
359  int ret = in_grouping_U(z, g_v, 1072, 1103, 1);
360  if (ret < 0) goto lab4;
361  z->c += ret;
362  }
363  {
364  int ret = out_grouping_U(z, g_v, 1072, 1103, 1);
365  if (ret < 0) goto lab4;
366  z->c += ret;
367  }
368  {
369  int ret = in_grouping_U(z, g_v, 1072, 1103, 1);
370  if (ret < 0) goto lab4;
371  z->c += ret;
372  }
373  i_p2 = z->c;
374  lab4:
375  z->c = v_4;
376  }
377  z->lb = z->c; z->c = z->l;
378  {
379  int v_5;
380  if (z->c < i_pV) return 0;
381  v_5 = z->lb; z->lb = i_pV;
382  {
383  int v_6 = z->l - z->c;
384  do {
385  int v_7 = z->l - z->c;
386  z->ket = z->c;
387  among_var = find_among_b(z, a_0, 9, 0);
388  if (!among_var) goto lab6;
389  z->bra = z->c;
390  switch (among_var) {
391  case 1:
392  do {
393  if (!(eq_s_b(z, 2, s_2))) goto lab7;
394  break;
395  lab7:
396  if (!(eq_s_b(z, 2, s_3))) goto lab6;
397  } while (0);
398  slice_del(z);
399  break;
400  case 2:
401  slice_del(z);
402  break;
403  }
404  break;
405  lab6:
406  z->c = z->l - v_7;
407  {
408  int v_8 = z->l - z->c;
409  z->ket = z->c;
410  if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 140 && z->p[z->c - 1] != 143)) { z->c = z->l - v_8; goto lab8; }
411  if (!find_among_b(z, a_3, 2, 0)) { z->c = z->l - v_8; goto lab8; }
412  z->bra = z->c;
413  slice_del(z);
414  lab8:
415  ;
416  }
417  do {
418  int v_9 = z->l - z->c;
419  z->ket = z->c;
420  if (!find_among_b(z, a_1, 26, 0)) goto lab9;
421  z->bra = z->c;
422  slice_del(z);
423  {
424  int v_10 = z->l - z->c;
425  z->ket = z->c;
426  among_var = find_among_b(z, a_2, 8, 0);
427  if (!among_var) { z->c = z->l - v_10; goto lab10; }
428  z->bra = z->c;
429  switch (among_var) {
430  case 1:
431  do {
432  if (!(eq_s_b(z, 2, s_4))) goto lab11;
433  break;
434  lab11:
435  if (!(eq_s_b(z, 2, s_5))) { z->c = z->l - v_10; goto lab10; }
436  } while (0);
437  slice_del(z);
438  break;
439  case 2:
440  slice_del(z);
441  break;
442  }
443  lab10:
444  ;
445  }
446  break;
447  lab9:
448  z->c = z->l - v_9;
449  z->ket = z->c;
450  among_var = find_among_b(z, a_4, 46, 0);
451  if (!among_var) goto lab12;
452  z->bra = z->c;
453  switch (among_var) {
454  case 1:
455  do {
456  if (!(eq_s_b(z, 2, s_6))) goto lab13;
457  break;
458  lab13:
459  if (!(eq_s_b(z, 2, s_7))) goto lab12;
460  } while (0);
461  slice_del(z);
462  break;
463  case 2:
464  slice_del(z);
465  break;
466  }
467  break;
468  lab12:
469  z->c = z->l - v_9;
470  z->ket = z->c;
471  if (!find_among_b(z, a_5, 36, 0)) goto lab5;
472  z->bra = z->c;
473  slice_del(z);
474  } while (0);
475  } while (0);
476  lab5:
477  z->c = z->l - v_6;
478  }
479  {
480  int v_11 = z->l - z->c;
481  z->ket = z->c;
482  if (!(eq_s_b(z, 2, s_8))) { z->c = z->l - v_11; goto lab14; }
483  z->bra = z->c;
484  slice_del(z);
485  lab14:
486  ;
487  }
488  {
489  int v_12 = z->l - z->c;
490  z->ket = z->c;
491  if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 130 && z->p[z->c - 1] != 140)) goto lab15;
492  if (!find_among_b(z, a_6, 2, 0)) goto lab15;
493  z->bra = z->c;
494  if (i_p2 > z->c) goto lab15;
495  slice_del(z);
496  lab15:
497  z->c = z->l - v_12;
498  }
499  {
500  int v_13 = z->l - z->c;
501  z->ket = z->c;
502  among_var = find_among_b(z, a_7, 4, 0);
503  if (!among_var) goto lab16;
504  z->bra = z->c;
505  switch (among_var) {
506  case 1:
507  slice_del(z);
508  z->ket = z->c;
509  if (!(eq_s_b(z, 2, s_9))) goto lab16;
510  z->bra = z->c;
511  if (!(eq_s_b(z, 2, s_10))) goto lab16;
512  slice_del(z);
513  break;
514  case 2:
515  if (!(eq_s_b(z, 2, s_11))) goto lab16;
516  slice_del(z);
517  break;
518  case 3:
519  slice_del(z);
520  break;
521  }
522  lab16:
523  z->c = z->l - v_13;
524  }
525  z->lb = v_5;
526  }
527  z->c = z->lb;
528  return 1;
529 }
unsigned char symbol
Definition: api.h:4
static int stem(struct SN_env *z)
Definition: russian.cc:317
static const symbol s_4_27[6]
Definition: russian.cc:154
static const symbol s_2[]
Definition: russian.cc:14
static const symbol s_5_7[4]
Definition: russian.cc:229
static const struct among a_7[4]
Definition: russian.cc:308
static const symbol s_5_23[6]
Definition: russian.cc:245
static const symbol s_7_3[2]
Definition: russian.cc:307
static const symbol s_7_2[8]
Definition: russian.cc:306
static const struct among a_3[2]
Definition: russian.cc:122
static const symbol s_4_7[4]
Definition: russian.cc:134
static const symbol s_4_32[2]
Definition: russian.cc:159
static const symbol s_4[]
Definition: russian.cc:16
static const symbol s_4_26[4]
Definition: russian.cc:153
static const symbol s_4_19[4]
Definition: russian.cc:146
static const symbol s_4_28[6]
Definition: russian.cc:155
static const symbol s_4_18[6]
Definition: russian.cc:145
static const symbol s_5_27[4]
Definition: russian.cc:249
static const symbol s_4_16[4]
Definition: russian.cc:143
static const symbol s_4_6[4]
Definition: russian.cc:133
static const symbol s_4_29[2]
Definition: russian.cc:156
static const symbol s_5_12[2]
Definition: russian.cc:234
static const symbol s_1_5[4]
Definition: russian.cc:51
static const symbol s_5_17[4]
Definition: russian.cc:239
Xapian::Internal::Snowball::Russian::SN_local SN_local
Definition: russian.cc:10
static const symbol s_0_0[10]
Definition: russian.cc:25
static const symbol s_4_9[4]
Definition: russian.cc:136
static const symbol s_4_3[4]
Definition: russian.cc:130
static const symbol s_0_1[12]
Definition: russian.cc:26
static const symbol s_4_13[6]
Definition: russian.cc:140
static const symbol s_5_0[2]
Definition: russian.cc:222
static const symbol s_4_1[4]
Definition: russian.cc:128
static const symbol s_4_12[6]
Definition: russian.cc:139
static const symbol s_4_4[4]
Definition: russian.cc:131
static const symbol s_5_15[2]
Definition: russian.cc:237
static const symbol s_4_23[6]
Definition: russian.cc:150
static const symbol s_5_6[2]
Definition: russian.cc:228
static const symbol s_1_3[4]
Definition: russian.cc:49
static const symbol s_0_7[8]
Definition: russian.cc:32
static const symbol s_3_0[4]
Definition: russian.cc:120
static const symbol s_6_0[6]
Definition: russian.cc:297
static const symbol s_4_40[4]
Definition: russian.cc:167
static const symbol s_6[]
Definition: russian.cc:18
static const symbol s_1_4[4]
Definition: russian.cc:50
static const symbol s_5_25[4]
Definition: russian.cc:247
static const symbol s_5_9[2]
Definition: russian.cc:231
static const symbol s_0_5[4]
Definition: russian.cc:30
static const symbol s_3[]
Definition: russian.cc:15
static const symbol s_4_5[6]
Definition: russian.cc:132
static const symbol s_1_18[4]
Definition: russian.cc:64
static const symbol s_1_1[6]
Definition: russian.cc:47
static const symbol s_2_4[4]
Definition: russian.cc:105
static const symbol s_4_2[6]
Definition: russian.cc:129
static const symbol s_1_17[4]
Definition: russian.cc:63
static const symbol s_2_7[4]
Definition: russian.cc:108
static const symbol s_5_35[2]
Definition: russian.cc:257
static const symbol s_5_8[4]
Definition: russian.cc:230
static const symbol s_7[]
Definition: russian.cc:19
static const symbol s_5_24[2]
Definition: russian.cc:246
static const struct among a_5[36]
Definition: russian.cc:258
static const symbol s_4_14[2]
Definition: russian.cc:141
static const struct among a_6[2]
Definition: russian.cc:299
static const symbol s_4_45[6]
Definition: russian.cc:172
static const symbol s_1_20[4]
Definition: russian.cc:66
static const struct among a_2[8]
Definition: russian.cc:109
static const symbol s_4_31[4]
Definition: russian.cc:158
static const symbol s_1_23[4]
Definition: russian.cc:69
static const symbol s_1_25[6]
Definition: russian.cc:71
static const symbol s_4_33[4]
Definition: russian.cc:160
static const symbol s_5_32[4]
Definition: russian.cc:254
static const symbol s_0_8[8]
Definition: russian.cc:33
static const symbol s_1_10[4]
Definition: russian.cc:56
static const symbol s_5_22[8]
Definition: russian.cc:244
static const symbol s_4_21[6]
Definition: russian.cc:148
static const symbol s_4_15[4]
Definition: russian.cc:142
static const symbol s_7_1[2]
Definition: russian.cc:305
static const struct among a_1[26]
Definition: russian.cc:72
static const symbol s_4_39[4]
Definition: russian.cc:166
static const symbol s_1_24[6]
Definition: russian.cc:70
static const symbol s_0_4[4]
Definition: russian.cc:29
static const symbol s_4_20[6]
Definition: russian.cc:147
static const symbol s_5_4[2]
Definition: russian.cc:226
static const symbol s_4_41[6]
Definition: russian.cc:168
static const symbol s_0_2[12]
Definition: russian.cc:27
static const symbol s_1_11[4]
Definition: russian.cc:57
static const symbol s_5_3[4]
Definition: russian.cc:225
static const struct among a_0[9]
Definition: russian.cc:34
static const symbol s_5_31[4]
Definition: russian.cc:253
static const symbol s_4_0[4]
Definition: russian.cc:127
static const symbol s_5_19[4]
Definition: russian.cc:241
static const symbol s_1_16[4]
Definition: russian.cc:62
static const symbol s_1_15[6]
Definition: russian.cc:61
static const symbol s_2_3[2]
Definition: russian.cc:104
static const symbol s_2_6[4]
Definition: russian.cc:107
static const symbol s_4_30[4]
Definition: russian.cc:157
static const symbol s_5_28[4]
Definition: russian.cc:250
static const symbol s_10[]
Definition: russian.cc:22
static const symbol s_1_21[4]
Definition: russian.cc:67
static const symbol s_1[]
Definition: russian.cc:13
static const symbol s_5_30[6]
Definition: russian.cc:252
static const symbol s_4_10[6]
Definition: russian.cc:137
static const symbol s_5_14[4]
Definition: russian.cc:236
static const symbol s_3_1[4]
Definition: russian.cc:121
static const symbol s_5_13[4]
Definition: russian.cc:235
static const symbol s_5_10[4]
Definition: russian.cc:232
static const symbol s_4_17[6]
Definition: russian.cc:144
static const struct among a_4[46]
Definition: russian.cc:173
static const symbol s_1_9[4]
Definition: russian.cc:55
static const symbol s_5_33[6]
Definition: russian.cc:255
static const symbol s_4_44[6]
Definition: russian.cc:171
static const symbol s_2_0[4]
Definition: russian.cc:101
static const symbol s_11[]
Definition: russian.cc:23
static const symbol s_1_7[4]
Definition: russian.cc:53
static const symbol s_5_26[6]
Definition: russian.cc:248
static const symbol s_1_0[6]
Definition: russian.cc:46
static const symbol s_5_21[6]
Definition: russian.cc:243
static const symbol s_1_6[4]
Definition: russian.cc:52
static const symbol s_0_6[6]
Definition: russian.cc:31
static const symbol s_5_34[4]
Definition: russian.cc:256
static const symbol s_4_25[8]
Definition: russian.cc:152
static const symbol s_1_2[4]
Definition: russian.cc:48
static const symbol s_5_16[4]
Definition: russian.cc:238
static const symbol s_6_1[8]
Definition: russian.cc:298
static const symbol s_4_34[4]
Definition: russian.cc:161
static const symbol s_5_2[6]
Definition: russian.cc:224
static const symbol s_4_11[6]
Definition: russian.cc:138
static const symbol s_4_42[6]
Definition: russian.cc:169
static const symbol s_5_5[2]
Definition: russian.cc:227
static const symbol s_4_37[4]
Definition: russian.cc:164
static const symbol s_2_2[6]
Definition: russian.cc:103
static const symbol s_4_36[4]
Definition: russian.cc:163
static const symbol s_1_12[4]
Definition: russian.cc:58
static const symbol s_2_1[6]
Definition: russian.cc:102
static const symbol s_0_3[2]
Definition: russian.cc:28
static const symbol s_5_29[4]
Definition: russian.cc:251
static const symbol s_4_43[4]
Definition: russian.cc:170
static const symbol s_1_22[4]
Definition: russian.cc:68
static const unsigned char g_v[]
Definition: russian.cc:315
static const symbol s_5_11[4]
Definition: russian.cc:233
static const symbol s_4_8[6]
Definition: russian.cc:135
static const symbol s_1_8[4]
Definition: russian.cc:54
static const symbol s_8[]
Definition: russian.cc:20
static const symbol s_9[]
Definition: russian.cc:21
static const symbol s_1_13[4]
Definition: russian.cc:59
static const symbol s_1_19[4]
Definition: russian.cc:65
static const symbol s_5[]
Definition: russian.cc:17
static const symbol s_5_18[2]
Definition: russian.cc:240
static const symbol s_5_20[4]
Definition: russian.cc:242
static const symbol s_4_24[8]
Definition: russian.cc:151
static const symbol s_7_0[6]
Definition: russian.cc:304
static const symbol s_2_5[6]
Definition: russian.cc:106
static const symbol s_4_22[6]
Definition: russian.cc:149
static const symbol s_5_1[4]
Definition: russian.cc:223
static const symbol s_4_35[4]
Definition: russian.cc:162
static const symbol s_0[]
Definition: russian.cc:12
static const symbol s_1_14[6]
Definition: russian.cc:60
static const symbol s_4_38[2]
Definition: russian.cc:165
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 eq_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 *))
int eq_s_b(struct SN_env *z, int s_size, const symbol *s)
SNOWBALL_ERR slice_del(struct SN_env *z)
int skip_utf8(const symbol *p, int c, int limit, int n)
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