languages/hungarian.cc

Go to the documentation of this file.
00001 /* This file was generated automatically by the Snowball to ISO C++ compiler */
00002 
00003 #include <limits.h>
00004 #include "hungarian.h"
00005 
00006 static const symbol s_0_0[2] = { 'c', 's' };
00007 static const symbol s_0_1[3] = { 'd', 'z', 's' };
00008 static const symbol s_0_2[2] = { 'g', 'y' };
00009 static const symbol s_0_3[2] = { 'l', 'y' };
00010 static const symbol s_0_4[2] = { 'n', 'y' };
00011 static const symbol s_0_5[2] = { 's', 'z' };
00012 static const symbol s_0_6[2] = { 't', 'y' };
00013 static const symbol s_0_7[2] = { 'z', 's' };
00014 
00015 static const struct among a_0[8] =
00016 {
00017 /*  0 */ { 2, s_0_0, -1, -1},
00018 /*  1 */ { 3, s_0_1, -1, -1},
00019 /*  2 */ { 2, s_0_2, -1, -1},
00020 /*  3 */ { 2, s_0_3, -1, -1},
00021 /*  4 */ { 2, s_0_4, -1, -1},
00022 /*  5 */ { 2, s_0_5, -1, -1},
00023 /*  6 */ { 2, s_0_6, -1, -1},
00024 /*  7 */ { 2, s_0_7, -1, -1}
00025 };
00026 
00027 static const symbol s_1_0[2] = { 0xC3, 0xA1 };
00028 static const symbol s_1_1[2] = { 0xC3, 0xA9 };
00029 
00030 static const struct among a_1[2] =
00031 {
00032 /*  0 */ { 2, s_1_0, -1, 1},
00033 /*  1 */ { 2, s_1_1, -1, 2}
00034 };
00035 
00036 static const symbol s_2_0[2] = { 'b', 'b' };
00037 static const symbol s_2_1[2] = { 'c', 'c' };
00038 static const symbol s_2_2[2] = { 'd', 'd' };
00039 static const symbol s_2_3[2] = { 'f', 'f' };
00040 static const symbol s_2_4[2] = { 'g', 'g' };
00041 static const symbol s_2_5[2] = { 'j', 'j' };
00042 static const symbol s_2_6[2] = { 'k', 'k' };
00043 static const symbol s_2_7[2] = { 'l', 'l' };
00044 static const symbol s_2_8[2] = { 'm', 'm' };
00045 static const symbol s_2_9[2] = { 'n', 'n' };
00046 static const symbol s_2_10[2] = { 'p', 'p' };
00047 static const symbol s_2_11[2] = { 'r', 'r' };
00048 static const symbol s_2_12[3] = { 'c', 'c', 's' };
00049 static const symbol s_2_13[2] = { 's', 's' };
00050 static const symbol s_2_14[3] = { 'z', 'z', 's' };
00051 static const symbol s_2_15[2] = { 't', 't' };
00052 static const symbol s_2_16[2] = { 'v', 'v' };
00053 static const symbol s_2_17[3] = { 'g', 'g', 'y' };
00054 static const symbol s_2_18[3] = { 'l', 'l', 'y' };
00055 static const symbol s_2_19[3] = { 'n', 'n', 'y' };
00056 static const symbol s_2_20[3] = { 't', 't', 'y' };
00057 static const symbol s_2_21[3] = { 's', 's', 'z' };
00058 static const symbol s_2_22[2] = { 'z', 'z' };
00059 
00060 static const struct among a_2[23] =
00061 {
00062 /*  0 */ { 2, s_2_0, -1, -1},
00063 /*  1 */ { 2, s_2_1, -1, -1},
00064 /*  2 */ { 2, s_2_2, -1, -1},
00065 /*  3 */ { 2, s_2_3, -1, -1},
00066 /*  4 */ { 2, s_2_4, -1, -1},
00067 /*  5 */ { 2, s_2_5, -1, -1},
00068 /*  6 */ { 2, s_2_6, -1, -1},
00069 /*  7 */ { 2, s_2_7, -1, -1},
00070 /*  8 */ { 2, s_2_8, -1, -1},
00071 /*  9 */ { 2, s_2_9, -1, -1},
00072 /* 10 */ { 2, s_2_10, -1, -1},
00073 /* 11 */ { 2, s_2_11, -1, -1},
00074 /* 12 */ { 3, s_2_12, -1, -1},
00075 /* 13 */ { 2, s_2_13, -1, -1},
00076 /* 14 */ { 3, s_2_14, -1, -1},
00077 /* 15 */ { 2, s_2_15, -1, -1},
00078 /* 16 */ { 2, s_2_16, -1, -1},
00079 /* 17 */ { 3, s_2_17, -1, -1},
00080 /* 18 */ { 3, s_2_18, -1, -1},
00081 /* 19 */ { 3, s_2_19, -1, -1},
00082 /* 20 */ { 3, s_2_20, -1, -1},
00083 /* 21 */ { 3, s_2_21, -1, -1},
00084 /* 22 */ { 2, s_2_22, -1, -1}
00085 };
00086 
00087 static const symbol s_3_0[2] = { 'a', 'l' };
00088 static const symbol s_3_1[2] = { 'e', 'l' };
00089 
00090 static const struct among a_3[2] =
00091 {
00092 /*  0 */ { 2, s_3_0, -1, 1},
00093 /*  1 */ { 2, s_3_1, -1, 2}
00094 };
00095 
00096 static const symbol s_4_0[2] = { 'b', 'a' };
00097 static const symbol s_4_1[2] = { 'r', 'a' };
00098 static const symbol s_4_2[2] = { 'b', 'e' };
00099 static const symbol s_4_3[2] = { 'r', 'e' };
00100 static const symbol s_4_4[2] = { 'i', 'g' };
00101 static const symbol s_4_5[3] = { 'n', 'a', 'k' };
00102 static const symbol s_4_6[3] = { 'n', 'e', 'k' };
00103 static const symbol s_4_7[3] = { 'v', 'a', 'l' };
00104 static const symbol s_4_8[3] = { 'v', 'e', 'l' };
00105 static const symbol s_4_9[2] = { 'u', 'l' };
00106 static const symbol s_4_10[4] = { 'n', 0xC3, 0xA1, 'l' };
00107 static const symbol s_4_11[4] = { 'n', 0xC3, 0xA9, 'l' };
00108 static const symbol s_4_12[4] = { 'b', 0xC3, 0xB3, 'l' };
00109 static const symbol s_4_13[4] = { 'r', 0xC3, 0xB3, 'l' };
00110 static const symbol s_4_14[4] = { 't', 0xC3, 0xB3, 'l' };
00111 static const symbol s_4_15[4] = { 'b', 0xC3, 0xB5, 'l' };
00112 static const symbol s_4_16[4] = { 'r', 0xC3, 0xB5, 'l' };
00113 static const symbol s_4_17[4] = { 't', 0xC3, 0xB5, 'l' };
00114 static const symbol s_4_18[3] = { 0xC3, 0xBC, 'l' };
00115 static const symbol s_4_19[1] = { 'n' };
00116 static const symbol s_4_20[2] = { 'a', 'n' };
00117 static const symbol s_4_21[3] = { 'b', 'a', 'n' };
00118 static const symbol s_4_22[2] = { 'e', 'n' };
00119 static const symbol s_4_23[3] = { 'b', 'e', 'n' };
00120 static const symbol s_4_24[7] = { 'k', 0xC3, 0xA9, 'p', 'p', 'e', 'n' };
00121 static const symbol s_4_25[2] = { 'o', 'n' };
00122 static const symbol s_4_26[3] = { 0xC3, 0xB6, 'n' };
00123 static const symbol s_4_27[5] = { 'k', 0xC3, 0xA9, 'p', 'p' };
00124 static const symbol s_4_28[3] = { 'k', 'o', 'r' };
00125 static const symbol s_4_29[1] = { 't' };
00126 static const symbol s_4_30[2] = { 'a', 't' };
00127 static const symbol s_4_31[2] = { 'e', 't' };
00128 static const symbol s_4_32[5] = { 'k', 0xC3, 0xA9, 'n', 't' };
00129 static const symbol s_4_33[7] = { 'a', 'n', 'k', 0xC3, 0xA9, 'n', 't' };
00130 static const symbol s_4_34[7] = { 'e', 'n', 'k', 0xC3, 0xA9, 'n', 't' };
00131 static const symbol s_4_35[7] = { 'o', 'n', 'k', 0xC3, 0xA9, 'n', 't' };
00132 static const symbol s_4_36[2] = { 'o', 't' };
00133 static const symbol s_4_37[4] = { 0xC3, 0xA9, 'r', 't' };
00134 static const symbol s_4_38[3] = { 0xC3, 0xB6, 't' };
00135 static const symbol s_4_39[3] = { 'h', 'e', 'z' };
00136 static const symbol s_4_40[3] = { 'h', 'o', 'z' };
00137 static const symbol s_4_41[4] = { 'h', 0xC3, 0xB6, 'z' };
00138 static const symbol s_4_42[3] = { 'v', 0xC3, 0xA1 };
00139 static const symbol s_4_43[3] = { 'v', 0xC3, 0xA9 };
00140 
00141 static const struct among a_4[44] =
00142 {
00143 /*  0 */ { 2, s_4_0, -1, -1},
00144 /*  1 */ { 2, s_4_1, -1, -1},
00145 /*  2 */ { 2, s_4_2, -1, -1},
00146 /*  3 */ { 2, s_4_3, -1, -1},
00147 /*  4 */ { 2, s_4_4, -1, -1},
00148 /*  5 */ { 3, s_4_5, -1, -1},
00149 /*  6 */ { 3, s_4_6, -1, -1},
00150 /*  7 */ { 3, s_4_7, -1, -1},
00151 /*  8 */ { 3, s_4_8, -1, -1},
00152 /*  9 */ { 2, s_4_9, -1, -1},
00153 /* 10 */ { 4, s_4_10, -1, -1},
00154 /* 11 */ { 4, s_4_11, -1, -1},
00155 /* 12 */ { 4, s_4_12, -1, -1},
00156 /* 13 */ { 4, s_4_13, -1, -1},
00157 /* 14 */ { 4, s_4_14, -1, -1},
00158 /* 15 */ { 4, s_4_15, -1, -1},
00159 /* 16 */ { 4, s_4_16, -1, -1},
00160 /* 17 */ { 4, s_4_17, -1, -1},
00161 /* 18 */ { 3, s_4_18, -1, -1},
00162 /* 19 */ { 1, s_4_19, -1, -1},
00163 /* 20 */ { 2, s_4_20, 19, -1},
00164 /* 21 */ { 3, s_4_21, 20, -1},
00165 /* 22 */ { 2, s_4_22, 19, -1},
00166 /* 23 */ { 3, s_4_23, 22, -1},
00167 /* 24 */ { 7, s_4_24, 22, -1},
00168 /* 25 */ { 2, s_4_25, 19, -1},
00169 /* 26 */ { 3, s_4_26, 19, -1},
00170 /* 27 */ { 5, s_4_27, -1, -1},
00171 /* 28 */ { 3, s_4_28, -1, -1},
00172 /* 29 */ { 1, s_4_29, -1, -1},
00173 /* 30 */ { 2, s_4_30, 29, -1},
00174 /* 31 */ { 2, s_4_31, 29, -1},
00175 /* 32 */ { 5, s_4_32, 29, -1},
00176 /* 33 */ { 7, s_4_33, 32, -1},
00177 /* 34 */ { 7, s_4_34, 32, -1},
00178 /* 35 */ { 7, s_4_35, 32, -1},
00179 /* 36 */ { 2, s_4_36, 29, -1},
00180 /* 37 */ { 4, s_4_37, 29, -1},
00181 /* 38 */ { 3, s_4_38, 29, -1},
00182 /* 39 */ { 3, s_4_39, -1, -1},
00183 /* 40 */ { 3, s_4_40, -1, -1},
00184 /* 41 */ { 4, s_4_41, -1, -1},
00185 /* 42 */ { 3, s_4_42, -1, -1},
00186 /* 43 */ { 3, s_4_43, -1, -1}
00187 };
00188 
00189 static const symbol s_5_0[3] = { 0xC3, 0xA1, 'n' };
00190 static const symbol s_5_1[3] = { 0xC3, 0xA9, 'n' };
00191 static const symbol s_5_2[8] = { 0xC3, 0xA1, 'n', 'k', 0xC3, 0xA9, 'n', 't' };
00192 
00193 static const struct among a_5[3] =
00194 {
00195 /*  0 */ { 3, s_5_0, -1, 2},
00196 /*  1 */ { 3, s_5_1, -1, 1},
00197 /*  2 */ { 8, s_5_2, -1, 3}
00198 };
00199 
00200 static const symbol s_6_0[4] = { 's', 't', 'u', 'l' };
00201 static const symbol s_6_1[5] = { 'a', 's', 't', 'u', 'l' };
00202 static const symbol s_6_2[6] = { 0xC3, 0xA1, 's', 't', 'u', 'l' };
00203 static const symbol s_6_3[5] = { 's', 't', 0xC3, 0xBC, 'l' };
00204 static const symbol s_6_4[6] = { 'e', 's', 't', 0xC3, 0xBC, 'l' };
00205 static const symbol s_6_5[7] = { 0xC3, 0xA9, 's', 't', 0xC3, 0xBC, 'l' };
00206 
00207 static const struct among a_6[6] =
00208 {
00209 /*  0 */ { 4, s_6_0, -1, 2},
00210 /*  1 */ { 5, s_6_1, 0, 1},
00211 /*  2 */ { 6, s_6_2, 0, 3},
00212 /*  3 */ { 5, s_6_3, -1, 2},
00213 /*  4 */ { 6, s_6_4, 3, 1},
00214 /*  5 */ { 7, s_6_5, 3, 4}
00215 };
00216 
00217 static const symbol s_7_0[2] = { 0xC3, 0xA1 };
00218 static const symbol s_7_1[2] = { 0xC3, 0xA9 };
00219 
00220 static const struct among a_7[2] =
00221 {
00222 /*  0 */ { 2, s_7_0, -1, 1},
00223 /*  1 */ { 2, s_7_1, -1, 2}
00224 };
00225 
00226 static const symbol s_8_0[1] = { 'k' };
00227 static const symbol s_8_1[2] = { 'a', 'k' };
00228 static const symbol s_8_2[2] = { 'e', 'k' };
00229 static const symbol s_8_3[2] = { 'o', 'k' };
00230 static const symbol s_8_4[3] = { 0xC3, 0xA1, 'k' };
00231 static const symbol s_8_5[3] = { 0xC3, 0xA9, 'k' };
00232 static const symbol s_8_6[3] = { 0xC3, 0xB6, 'k' };
00233 
00234 static const struct among a_8[7] =
00235 {
00236 /*  0 */ { 1, s_8_0, -1, 7},
00237 /*  1 */ { 2, s_8_1, 0, 4},
00238 /*  2 */ { 2, s_8_2, 0, 6},
00239 /*  3 */ { 2, s_8_3, 0, 5},
00240 /*  4 */ { 3, s_8_4, 0, 1},
00241 /*  5 */ { 3, s_8_5, 0, 2},
00242 /*  6 */ { 3, s_8_6, 0, 3}
00243 };
00244 
00245 static const symbol s_9_0[3] = { 0xC3, 0xA9, 'i' };
00246 static const symbol s_9_1[5] = { 0xC3, 0xA1, 0xC3, 0xA9, 'i' };
00247 static const symbol s_9_2[5] = { 0xC3, 0xA9, 0xC3, 0xA9, 'i' };
00248 static const symbol s_9_3[2] = { 0xC3, 0xA9 };
00249 static const symbol s_9_4[3] = { 'k', 0xC3, 0xA9 };
00250 static const symbol s_9_5[4] = { 'a', 'k', 0xC3, 0xA9 };
00251 static const symbol s_9_6[4] = { 'e', 'k', 0xC3, 0xA9 };
00252 static const symbol s_9_7[4] = { 'o', 'k', 0xC3, 0xA9 };
00253 static const symbol s_9_8[5] = { 0xC3, 0xA1, 'k', 0xC3, 0xA9 };
00254 static const symbol s_9_9[5] = { 0xC3, 0xA9, 'k', 0xC3, 0xA9 };
00255 static const symbol s_9_10[5] = { 0xC3, 0xB6, 'k', 0xC3, 0xA9 };
00256 static const symbol s_9_11[4] = { 0xC3, 0xA9, 0xC3, 0xA9 };
00257 
00258 static const struct among a_9[12] =
00259 {
00260 /*  0 */ { 3, s_9_0, -1, 7},
00261 /*  1 */ { 5, s_9_1, 0, 6},
00262 /*  2 */ { 5, s_9_2, 0, 5},
00263 /*  3 */ { 2, s_9_3, -1, 9},
00264 /*  4 */ { 3, s_9_4, 3, 4},
00265 /*  5 */ { 4, s_9_5, 4, 1},
00266 /*  6 */ { 4, s_9_6, 4, 1},
00267 /*  7 */ { 4, s_9_7, 4, 1},
00268 /*  8 */ { 5, s_9_8, 4, 3},
00269 /*  9 */ { 5, s_9_9, 4, 2},
00270 /* 10 */ { 5, s_9_10, 4, 1},
00271 /* 11 */ { 4, s_9_11, 3, 8}
00272 };
00273 
00274 static const symbol s_10_0[1] = { 'a' };
00275 static const symbol s_10_1[2] = { 'j', 'a' };
00276 static const symbol s_10_2[1] = { 'd' };
00277 static const symbol s_10_3[2] = { 'a', 'd' };
00278 static const symbol s_10_4[2] = { 'e', 'd' };
00279 static const symbol s_10_5[2] = { 'o', 'd' };
00280 static const symbol s_10_6[3] = { 0xC3, 0xA1, 'd' };
00281 static const symbol s_10_7[3] = { 0xC3, 0xA9, 'd' };
00282 static const symbol s_10_8[3] = { 0xC3, 0xB6, 'd' };
00283 static const symbol s_10_9[1] = { 'e' };
00284 static const symbol s_10_10[2] = { 'j', 'e' };
00285 static const symbol s_10_11[2] = { 'n', 'k' };
00286 static const symbol s_10_12[3] = { 'u', 'n', 'k' };
00287 static const symbol s_10_13[4] = { 0xC3, 0xA1, 'n', 'k' };
00288 static const symbol s_10_14[4] = { 0xC3, 0xA9, 'n', 'k' };
00289 static const symbol s_10_15[4] = { 0xC3, 0xBC, 'n', 'k' };
00290 static const symbol s_10_16[2] = { 'u', 'k' };
00291 static const symbol s_10_17[3] = { 'j', 'u', 'k' };
00292 static const symbol s_10_18[5] = { 0xC3, 0xA1, 'j', 'u', 'k' };
00293 static const symbol s_10_19[3] = { 0xC3, 0xBC, 'k' };
00294 static const symbol s_10_20[4] = { 'j', 0xC3, 0xBC, 'k' };
00295 static const symbol s_10_21[6] = { 0xC3, 0xA9, 'j', 0xC3, 0xBC, 'k' };
00296 static const symbol s_10_22[1] = { 'm' };
00297 static const symbol s_10_23[2] = { 'a', 'm' };
00298 static const symbol s_10_24[2] = { 'e', 'm' };
00299 static const symbol s_10_25[2] = { 'o', 'm' };
00300 static const symbol s_10_26[3] = { 0xC3, 0xA1, 'm' };
00301 static const symbol s_10_27[3] = { 0xC3, 0xA9, 'm' };
00302 static const symbol s_10_28[1] = { 'o' };
00303 static const symbol s_10_29[2] = { 0xC3, 0xA1 };
00304 static const symbol s_10_30[2] = { 0xC3, 0xA9 };
00305 
00306 static const struct among a_10[31] =
00307 {
00308 /*  0 */ { 1, s_10_0, -1, 18},
00309 /*  1 */ { 2, s_10_1, 0, 17},
00310 /*  2 */ { 1, s_10_2, -1, 16},
00311 /*  3 */ { 2, s_10_3, 2, 13},
00312 /*  4 */ { 2, s_10_4, 2, 13},
00313 /*  5 */ { 2, s_10_5, 2, 13},
00314 /*  6 */ { 3, s_10_6, 2, 14},
00315 /*  7 */ { 3, s_10_7, 2, 15},
00316 /*  8 */ { 3, s_10_8, 2, 13},
00317 /*  9 */ { 1, s_10_9, -1, 18},
00318 /* 10 */ { 2, s_10_10, 9, 17},
00319 /* 11 */ { 2, s_10_11, -1, 4},
00320 /* 12 */ { 3, s_10_12, 11, 1},
00321 /* 13 */ { 4, s_10_13, 11, 2},
00322 /* 14 */ { 4, s_10_14, 11, 3},
00323 /* 15 */ { 4, s_10_15, 11, 1},
00324 /* 16 */ { 2, s_10_16, -1, 8},
00325 /* 17 */ { 3, s_10_17, 16, 7},
00326 /* 18 */ { 5, s_10_18, 17, 5},
00327 /* 19 */ { 3, s_10_19, -1, 8},
00328 /* 20 */ { 4, s_10_20, 19, 7},
00329 /* 21 */ { 6, s_10_21, 20, 6},
00330 /* 22 */ { 1, s_10_22, -1, 12},
00331 /* 23 */ { 2, s_10_23, 22, 9},
00332 /* 24 */ { 2, s_10_24, 22, 9},
00333 /* 25 */ { 2, s_10_25, 22, 9},
00334 /* 26 */ { 3, s_10_26, 22, 10},
00335 /* 27 */ { 3, s_10_27, 22, 11},
00336 /* 28 */ { 1, s_10_28, -1, 18},
00337 /* 29 */ { 2, s_10_29, -1, 19},
00338 /* 30 */ { 2, s_10_30, -1, 20}
00339 };
00340 
00341 static const symbol s_11_0[2] = { 'i', 'd' };
00342 static const symbol s_11_1[3] = { 'a', 'i', 'd' };
00343 static const symbol s_11_2[4] = { 'j', 'a', 'i', 'd' };
00344 static const symbol s_11_3[3] = { 'e', 'i', 'd' };
00345 static const symbol s_11_4[4] = { 'j', 'e', 'i', 'd' };
00346 static const symbol s_11_5[4] = { 0xC3, 0xA1, 'i', 'd' };
00347 static const symbol s_11_6[4] = { 0xC3, 0xA9, 'i', 'd' };
00348 static const symbol s_11_7[1] = { 'i' };
00349 static const symbol s_11_8[2] = { 'a', 'i' };
00350 static const symbol s_11_9[3] = { 'j', 'a', 'i' };
00351 static const symbol s_11_10[2] = { 'e', 'i' };
00352 static const symbol s_11_11[3] = { 'j', 'e', 'i' };
00353 static const symbol s_11_12[3] = { 0xC3, 0xA1, 'i' };
00354 static const symbol s_11_13[3] = { 0xC3, 0xA9, 'i' };
00355 static const symbol s_11_14[4] = { 'i', 't', 'e', 'k' };
00356 static const symbol s_11_15[5] = { 'e', 'i', 't', 'e', 'k' };
00357 static const symbol s_11_16[6] = { 'j', 'e', 'i', 't', 'e', 'k' };
00358 static const symbol s_11_17[6] = { 0xC3, 0xA9, 'i', 't', 'e', 'k' };
00359 static const symbol s_11_18[2] = { 'i', 'k' };
00360 static const symbol s_11_19[3] = { 'a', 'i', 'k' };
00361 static const symbol s_11_20[4] = { 'j', 'a', 'i', 'k' };
00362 static const symbol s_11_21[3] = { 'e', 'i', 'k' };
00363 static const symbol s_11_22[4] = { 'j', 'e', 'i', 'k' };
00364 static const symbol s_11_23[4] = { 0xC3, 0xA1, 'i', 'k' };
00365 static const symbol s_11_24[4] = { 0xC3, 0xA9, 'i', 'k' };
00366 static const symbol s_11_25[3] = { 'i', 'n', 'k' };
00367 static const symbol s_11_26[4] = { 'a', 'i', 'n', 'k' };
00368 static const symbol s_11_27[5] = { 'j', 'a', 'i', 'n', 'k' };
00369 static const symbol s_11_28[4] = { 'e', 'i', 'n', 'k' };
00370 static const symbol s_11_29[5] = { 'j', 'e', 'i', 'n', 'k' };
00371 static const symbol s_11_30[5] = { 0xC3, 0xA1, 'i', 'n', 'k' };
00372 static const symbol s_11_31[5] = { 0xC3, 0xA9, 'i', 'n', 'k' };
00373 static const symbol s_11_32[5] = { 'a', 'i', 't', 'o', 'k' };
00374 static const symbol s_11_33[6] = { 'j', 'a', 'i', 't', 'o', 'k' };
00375 static const symbol s_11_34[6] = { 0xC3, 0xA1, 'i', 't', 'o', 'k' };
00376 static const symbol s_11_35[2] = { 'i', 'm' };
00377 static const symbol s_11_36[3] = { 'a', 'i', 'm' };
00378 static const symbol s_11_37[4] = { 'j', 'a', 'i', 'm' };
00379 static const symbol s_11_38[3] = { 'e', 'i', 'm' };
00380 static const symbol s_11_39[4] = { 'j', 'e', 'i', 'm' };
00381 static const symbol s_11_40[4] = { 0xC3, 0xA1, 'i', 'm' };
00382 static const symbol s_11_41[4] = { 0xC3, 0xA9, 'i', 'm' };
00383 
00384 static const struct among a_11[42] =
00385 {
00386 /*  0 */ { 2, s_11_0, -1, 10},
00387 /*  1 */ { 3, s_11_1, 0, 9},
00388 /*  2 */ { 4, s_11_2, 1, 6},
00389 /*  3 */ { 3, s_11_3, 0, 9},
00390 /*  4 */ { 4, s_11_4, 3, 6},
00391 /*  5 */ { 4, s_11_5, 0, 7},
00392 /*  6 */ { 4, s_11_6, 0, 8},
00393 /*  7 */ { 1, s_11_7, -1, 15},
00394 /*  8 */ { 2, s_11_8, 7, 14},
00395 /*  9 */ { 3, s_11_9, 8, 11},
00396 /* 10 */ { 2, s_11_10, 7, 14},
00397 /* 11 */ { 3, s_11_11, 10, 11},
00398 /* 12 */ { 3, s_11_12, 7, 12},
00399 /* 13 */ { 3, s_11_13, 7, 13},
00400 /* 14 */ { 4, s_11_14, -1, 24},
00401 /* 15 */ { 5, s_11_15, 14, 21},
00402 /* 16 */ { 6, s_11_16, 15, 20},
00403 /* 17 */ { 6, s_11_17, 14, 23},
00404 /* 18 */ { 2, s_11_18, -1, 29},
00405 /* 19 */ { 3, s_11_19, 18, 26},
00406 /* 20 */ { 4, s_11_20, 19, 25},
00407 /* 21 */ { 3, s_11_21, 18, 26},
00408 /* 22 */ { 4, s_11_22, 21, 25},
00409 /* 23 */ { 4, s_11_23, 18, 27},
00410 /* 24 */ { 4, s_11_24, 18, 28},
00411 /* 25 */ { 3, s_11_25, -1, 20},
00412 /* 26 */ { 4, s_11_26, 25, 17},
00413 /* 27 */ { 5, s_11_27, 26, 16},
00414 /* 28 */ { 4, s_11_28, 25, 17},
00415 /* 29 */ { 5, s_11_29, 28, 16},
00416 /* 30 */ { 5, s_11_30, 25, 18},
00417 /* 31 */ { 5, s_11_31, 25, 19},
00418 /* 32 */ { 5, s_11_32, -1, 21},
00419 /* 33 */ { 6, s_11_33, 32, 20},
00420 /* 34 */ { 6, s_11_34, -1, 22},
00421 /* 35 */ { 2, s_11_35, -1, 5},
00422 /* 36 */ { 3, s_11_36, 35, 4},
00423 /* 37 */ { 4, s_11_37, 36, 1},
00424 /* 38 */ { 3, s_11_38, 35, 4},
00425 /* 39 */ { 4, s_11_39, 38, 1},
00426 /* 40 */ { 4, s_11_40, 35, 2},
00427 /* 41 */ { 4, s_11_41, 35, 3}
00428 };
00429 
00430 static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 52, 14 };
00431 
00432 static const symbol s_0[] = { 'a' };
00433 static const symbol s_1[] = { 'e' };
00434 static const symbol s_2[] = { 'e' };
00435 static const symbol s_3[] = { 'a' };
00436 static const symbol s_4[] = { 'a' };
00437 static const symbol s_5[] = { 'a' };
00438 static const symbol s_6[] = { 'e' };
00439 static const symbol s_7[] = { 'a' };
00440 static const symbol s_8[] = { 'e' };
00441 static const symbol s_9[] = { 'e' };
00442 static const symbol s_10[] = { 'a' };
00443 static const symbol s_11[] = { 'e' };
00444 static const symbol s_12[] = { 'a' };
00445 static const symbol s_13[] = { 'e' };
00446 static const symbol s_14[] = { 'a' };
00447 static const symbol s_15[] = { 'e' };
00448 static const symbol s_16[] = { 'a' };
00449 static const symbol s_17[] = { 'e' };
00450 static const symbol s_18[] = { 'a' };
00451 static const symbol s_19[] = { 'e' };
00452 static const symbol s_20[] = { 'a' };
00453 static const symbol s_21[] = { 'e' };
00454 static const symbol s_22[] = { 'a' };
00455 static const symbol s_23[] = { 'e' };
00456 static const symbol s_24[] = { 'a' };
00457 static const symbol s_25[] = { 'e' };
00458 static const symbol s_26[] = { 'a' };
00459 static const symbol s_27[] = { 'e' };
00460 static const symbol s_28[] = { 'a' };
00461 static const symbol s_29[] = { 'e' };
00462 static const symbol s_30[] = { 'a' };
00463 static const symbol s_31[] = { 'e' };
00464 static const symbol s_32[] = { 'a' };
00465 static const symbol s_33[] = { 'e' };
00466 static const symbol s_34[] = { 'a' };
00467 static const symbol s_35[] = { 'e' };
00468 
00469 int Xapian::InternalStemHungarian::r_mark_regions() { /* forwardmode */
00470     I_p1 = l; /* p1 = <integer expression>, line 46 */
00471     {   int c1 = c; /* or, line 51 */
00472         if (in_grouping_U(g_v, 97, 252, 0)) goto lab1; /* grouping v, line 48 */
00473         if (in_grouping_U(g_v, 97, 252, 1) < 0) goto lab1; /* goto */ /* non v, line 48 */
00474         {   int c2 = c; /* or, line 49 */
00475             if (c + 1 >= l || p[c + 1] >> 5 != 3 || !((101187584 >> (p[c + 1] & 0x1f)) & 1)) goto lab3; /* among, line 49 */
00476             if (!(find_among(a_0, 8, 0, 0))) goto lab3;
00477             goto lab2;
00478         lab3:
00479             c = c2;
00480             {   int ret = skip_utf8(p, c, 0, l, 1);
00481                 if (ret < 0) goto lab1;
00482                 c = ret; /* next, line 49 */
00483             }
00484         }
00485     lab2:
00486         I_p1 = c; /* setmark p1, line 50 */
00487         goto lab0;
00488     lab1:
00489         c = c1;
00490         if (out_grouping_U(g_v, 97, 252, 0)) return 0; /* non v, line 53 */
00491         {   int ret = out_grouping_U(g_v, 97, 252, 1); /* gopast */ /* grouping v, line 53 */
00492             if (ret < 0) return 0;
00493             c += ret;
00494         }
00495         I_p1 = c; /* setmark p1, line 53 */
00496     }
00497 lab0:
00498     return 1;
00499 }
00500 
00501 int Xapian::InternalStemHungarian::r_R1() { /* backwardmode */
00502     if (!(I_p1 <= c)) return 0; /* p1 <= <integer expression>, line 58 */
00503     return 1;
00504 }
00505 
00506 int Xapian::InternalStemHungarian::r_v_ending() { /* backwardmode */
00507     int among_var;
00508     ket = c; /* [, line 61 */
00509     if (c - 1 <= lb || (p[c - 1] != 161 && p[c - 1] != 169)) return 0; /* substring, line 61 */
00510     among_var = find_among_b(a_1, 2, 0, 0);
00511     if (!(among_var)) return 0;
00512     bra = c; /* ], line 61 */
00513     {   int ret = r_R1(); /* call R1, line 61 */
00514         if (ret <= 0) return ret;
00515     }
00516     switch(among_var) { /* among, line 61 */
00517         case 0: return 0;
00518         case 1:
00519             {   int ret = slice_from_s(1, s_0); /* <-, line 62 */
00520                 if (ret < 0) return ret;
00521             }
00522             break;
00523         case 2:
00524             {   int ret = slice_from_s(1, s_1); /* <-, line 63 */
00525                 if (ret < 0) return ret;
00526             }
00527             break;
00528     }
00529     return 1;
00530 }
00531 
00532 int Xapian::InternalStemHungarian::r_double() { /* backwardmode */
00533     {   int m_test1 = l - c; /* test, line 68 */
00534         if (c - 1 <= lb || p[c - 1] >> 5 != 3 || !((106790108 >> (p[c - 1] & 0x1f)) & 1)) return 0; /* among, line 68 */
00535         if (!(find_among_b(a_2, 23, 0, 0))) return 0;
00536         c = l - m_test1;
00537     }
00538     return 1;
00539 }
00540 
00541 int Xapian::InternalStemHungarian::r_undouble() { /* backwardmode */
00542     {   int ret = skip_utf8(p, c, lb, 0, -1);
00543         if (ret < 0) return 0;
00544         c = ret; /* next, line 73 */
00545     }
00546     ket = c; /* [, line 73 */
00547     {   int ret = skip_utf8(p, c, lb, l, - 1); /* hop, line 73 */
00548         if (ret < 0) return 0;
00549         c = ret;
00550     }
00551     bra = c; /* ], line 73 */
00552     if (slice_del() == -1) return -1; /* delete, line 73 */
00553     return 1;
00554 }
00555 
00556 int Xapian::InternalStemHungarian::r_instrum() { /* backwardmode */
00557     int among_var;
00558     ket = c; /* [, line 77 */
00559     if (c - 1 <= lb || p[c - 1] != 108) return 0; /* substring, line 77 */
00560     among_var = find_among_b(a_3, 2, 0, 0);
00561     if (!(among_var)) return 0;
00562     bra = c; /* ], line 77 */
00563     {   int ret = r_R1(); /* call R1, line 77 */
00564         if (ret <= 0) return ret;
00565     }
00566     switch(among_var) { /* among, line 77 */
00567         case 0: return 0;
00568         case 1:
00569             {   int ret = r_double(); /* call double, line 78 */
00570                 if (ret <= 0) return ret;
00571             }
00572             break;
00573         case 2:
00574             {   int ret = r_double(); /* call double, line 79 */
00575                 if (ret <= 0) return ret;
00576             }
00577             break;
00578     }
00579     if (slice_del() == -1) return -1; /* delete, line 81 */
00580     {   int ret = r_undouble(); /* call undouble, line 82 */
00581         if (ret <= 0) return ret;
00582     }
00583     return 1;
00584 }
00585 
00586 int Xapian::InternalStemHungarian::r_case() { /* backwardmode */
00587     ket = c; /* [, line 87 */
00588     if (!(find_among_b(a_4, 44, 0, 0))) return 0; /* substring, line 87 */
00589     bra = c; /* ], line 87 */
00590     {   int ret = r_R1(); /* call R1, line 87 */
00591         if (ret <= 0) return ret;
00592     }
00593     if (slice_del() == -1) return -1; /* delete, line 111 */
00594     {   int ret = r_v_ending(); /* call v_ending, line 112 */
00595         if (ret <= 0) return ret;
00596     }
00597     return 1;
00598 }
00599 
00600 int Xapian::InternalStemHungarian::r_case_special() { /* backwardmode */
00601     int among_var;
00602     ket = c; /* [, line 116 */
00603     if (c - 2 <= lb || (p[c - 1] != 110 && p[c - 1] != 116)) return 0; /* substring, line 116 */
00604     among_var = find_among_b(a_5, 3, 0, 0);
00605     if (!(among_var)) return 0;
00606     bra = c; /* ], line 116 */
00607     {   int ret = r_R1(); /* call R1, line 116 */
00608         if (ret <= 0) return ret;
00609     }
00610     switch(among_var) { /* among, line 116 */
00611         case 0: return 0;
00612         case 1:
00613             {   int ret = slice_from_s(1, s_2); /* <-, line 117 */
00614                 if (ret < 0) return ret;
00615             }
00616             break;
00617         case 2:
00618             {   int ret = slice_from_s(1, s_3); /* <-, line 118 */
00619                 if (ret < 0) return ret;
00620             }
00621             break;
00622         case 3:
00623             {   int ret = slice_from_s(1, s_4); /* <-, line 119 */
00624                 if (ret < 0) return ret;
00625             }
00626             break;
00627     }
00628     return 1;
00629 }
00630 
00631 int Xapian::InternalStemHungarian::r_case_other() { /* backwardmode */
00632     int among_var;
00633     ket = c; /* [, line 124 */
00634     if (c - 3 <= lb || p[c - 1] != 108) return 0; /* substring, line 124 */
00635     among_var = find_among_b(a_6, 6, 0, 0);
00636     if (!(among_var)) return 0;
00637     bra = c; /* ], line 124 */
00638     {   int ret = r_R1(); /* call R1, line 124 */
00639         if (ret <= 0) return ret;
00640     }
00641     switch(among_var) { /* among, line 124 */
00642         case 0: return 0;
00643         case 1:
00644             if (slice_del() == -1) return -1; /* delete, line 125 */
00645             break;
00646         case 2:
00647             if (slice_del() == -1) return -1; /* delete, line 126 */
00648             break;
00649         case 3:
00650             {   int ret = slice_from_s(1, s_5); /* <-, line 127 */
00651                 if (ret < 0) return ret;
00652             }
00653             break;
00654         case 4:
00655             {   int ret = slice_from_s(1, s_6); /* <-, line 128 */
00656                 if (ret < 0) return ret;
00657             }
00658             break;
00659     }
00660     return 1;
00661 }
00662 
00663 int Xapian::InternalStemHungarian::r_factive() { /* backwardmode */
00664     int among_var;
00665     ket = c; /* [, line 133 */
00666     if (c - 1 <= lb || (p[c - 1] != 161 && p[c - 1] != 169)) return 0; /* substring, line 133 */
00667     among_var = find_among_b(a_7, 2, 0, 0);
00668     if (!(among_var)) return 0;
00669     bra = c; /* ], line 133 */
00670     {   int ret = r_R1(); /* call R1, line 133 */
00671         if (ret <= 0) return ret;
00672     }
00673     switch(among_var) { /* among, line 133 */
00674         case 0: return 0;
00675         case 1:
00676             {   int ret = r_double(); /* call double, line 134 */
00677                 if (ret <= 0) return ret;
00678             }
00679             break;
00680         case 2:
00681             {   int ret = r_double(); /* call double, line 135 */
00682                 if (ret <= 0) return ret;
00683             }
00684             break;
00685     }
00686     if (slice_del() == -1) return -1; /* delete, line 137 */
00687     {   int ret = r_undouble(); /* call undouble, line 138 */
00688         if (ret <= 0) return ret;
00689     }
00690     return 1;
00691 }
00692 
00693 int Xapian::InternalStemHungarian::r_plural() { /* backwardmode */
00694     int among_var;
00695     ket = c; /* [, line 142 */
00696     if (c <= lb || p[c - 1] != 107) return 0; /* substring, line 142 */
00697     among_var = find_among_b(a_8, 7, 0, 0);
00698     if (!(among_var)) return 0;
00699     bra = c; /* ], line 142 */
00700     {   int ret = r_R1(); /* call R1, line 142 */
00701         if (ret <= 0) return ret;
00702     }
00703     switch(among_var) { /* among, line 142 */
00704         case 0: return 0;
00705         case 1:
00706             {   int ret = slice_from_s(1, s_7); /* <-, line 143 */
00707                 if (ret < 0) return ret;
00708             }
00709             break;
00710         case 2:
00711             {   int ret = slice_from_s(1, s_8); /* <-, line 144 */
00712                 if (ret < 0) return ret;
00713             }
00714             break;
00715         case 3:
00716             if (slice_del() == -1) return -1; /* delete, line 145 */
00717             break;
00718         case 4:
00719             if (slice_del() == -1) return -1; /* delete, line 146 */
00720             break;
00721         case 5:
00722             if (slice_del() == -1) return -1; /* delete, line 147 */
00723             break;
00724         case 6:
00725             if (slice_del() == -1) return -1; /* delete, line 148 */
00726             break;
00727         case 7:
00728             if (slice_del() == -1) return -1; /* delete, line 149 */
00729             break;
00730     }
00731     return 1;
00732 }
00733 
00734 int Xapian::InternalStemHungarian::r_owned() { /* backwardmode */
00735     int among_var;
00736     ket = c; /* [, line 154 */
00737     if (c - 1 <= lb || (p[c - 1] != 105 && p[c - 1] != 169)) return 0; /* substring, line 154 */
00738     among_var = find_among_b(a_9, 12, 0, 0);
00739     if (!(among_var)) return 0;
00740     bra = c; /* ], line 154 */
00741     {   int ret = r_R1(); /* call R1, line 154 */
00742         if (ret <= 0) return ret;
00743     }
00744     switch(among_var) { /* among, line 154 */
00745         case 0: return 0;
00746         case 1:
00747             if (slice_del() == -1) return -1; /* delete, line 155 */
00748             break;
00749         case 2:
00750             {   int ret = slice_from_s(1, s_9); /* <-, line 156 */
00751                 if (ret < 0) return ret;
00752             }
00753             break;
00754         case 3:
00755             {   int ret = slice_from_s(1, s_10); /* <-, line 157 */
00756                 if (ret < 0) return ret;
00757             }
00758             break;
00759         case 4:
00760             if (slice_del() == -1) return -1; /* delete, line 158 */
00761             break;
00762         case 5:
00763             {   int ret = slice_from_s(1, s_11); /* <-, line 159 */
00764                 if (ret < 0) return ret;
00765             }
00766             break;
00767         case 6:
00768             {   int ret = slice_from_s(1, s_12); /* <-, line 160 */
00769                 if (ret < 0) return ret;
00770             }
00771             break;
00772         case 7:
00773             if (slice_del() == -1) return -1; /* delete, line 161 */
00774             break;
00775         case 8:
00776             {   int ret = slice_from_s(1, s_13); /* <-, line 162 */
00777                 if (ret < 0) return ret;
00778             }
00779             break;
00780         case 9:
00781             if (slice_del() == -1) return -1; /* delete, line 163 */
00782             break;
00783     }
00784     return 1;
00785 }
00786 
00787 int Xapian::InternalStemHungarian::r_sing_owner() { /* backwardmode */
00788     int among_var;
00789     ket = c; /* [, line 168 */
00790     among_var = find_among_b(a_10, 31, 0, 0); /* substring, line 168 */
00791     if (!(among_var)) return 0;
00792     bra = c; /* ], line 168 */
00793     {   int ret = r_R1(); /* call R1, line 168 */
00794         if (ret <= 0) return ret;
00795     }
00796     switch(among_var) { /* among, line 168 */
00797         case 0: return 0;
00798         case 1:
00799             if (slice_del() == -1) return -1; /* delete, line 169 */
00800             break;
00801         case 2:
00802             {   int ret = slice_from_s(1, s_14); /* <-, line 170 */
00803                 if (ret < 0) return ret;
00804             }
00805             break;
00806         case 3:
00807             {   int ret = slice_from_s(1, s_15); /* <-, line 171 */
00808                 if (ret < 0) return ret;
00809             }
00810             break;
00811         case 4:
00812             if (slice_del() == -1) return -1; /* delete, line 172 */
00813             break;
00814         case 5:
00815             {   int ret = slice_from_s(1, s_16); /* <-, line 173 */
00816                 if (ret < 0) return ret;
00817             }
00818             break;
00819         case 6:
00820             {   int ret = slice_from_s(1, s_17); /* <-, line 174 */
00821                 if (ret < 0) return ret;
00822             }
00823             break;
00824         case 7:
00825             if (slice_del() == -1) return -1; /* delete, line 175 */
00826             break;
00827         case 8:
00828             if (slice_del() == -1) return -1; /* delete, line 176 */
00829             break;
00830         case 9:
00831             if (slice_del() == -1) return -1; /* delete, line 177 */
00832             break;
00833         case 10:
00834             {   int ret = slice_from_s(1, s_18); /* <-, line 178 */
00835                 if (ret < 0) return ret;
00836             }
00837             break;
00838         case 11:
00839             {   int ret = slice_from_s(1, s_19); /* <-, line 179 */
00840                 if (ret < 0) return ret;
00841             }
00842             break;
00843         case 12:
00844             if (slice_del() == -1) return -1; /* delete, line 180 */
00845             break;
00846         case 13:
00847             if (slice_del() == -1) return -1; /* delete, line 181 */
00848             break;
00849         case 14:
00850             {   int ret = slice_from_s(1, s_20); /* <-, line 182 */
00851                 if (ret < 0) return ret;
00852             }
00853             break;
00854         case 15:
00855             {   int ret = slice_from_s(1, s_21); /* <-, line 183 */
00856                 if (ret < 0) return ret;
00857             }
00858             break;
00859         case 16:
00860             if (slice_del() == -1) return -1; /* delete, line 184 */
00861             break;
00862         case 17:
00863             if (slice_del() == -1) return -1; /* delete, line 185 */
00864             break;
00865         case 18:
00866             if (slice_del() == -1) return -1; /* delete, line 186 */
00867             break;
00868         case 19:
00869             {   int ret = slice_from_s(1, s_22); /* <-, line 187 */
00870                 if (ret < 0) return ret;
00871             }
00872             break;
00873         case 20:
00874             {   int ret = slice_from_s(1, s_23); /* <-, line 188 */
00875                 if (ret < 0) return ret;
00876             }
00877             break;
00878     }
00879     return 1;
00880 }
00881 
00882 int Xapian::InternalStemHungarian::r_plur_owner() { /* backwardmode */
00883     int among_var;
00884     ket = c; /* [, line 193 */
00885     if (c <= lb || p[c - 1] >> 5 != 3 || !((10768 >> (p[c - 1] & 0x1f)) & 1)) return 0; /* substring, line 193 */
00886     among_var = find_among_b(a_11, 42, 0, 0);
00887     if (!(among_var)) return 0;
00888     bra = c; /* ], line 193 */
00889     {   int ret = r_R1(); /* call R1, line 193 */
00890         if (ret <= 0) return ret;
00891     }
00892     switch(among_var) { /* among, line 193 */
00893         case 0: return 0;
00894         case 1:
00895             if (slice_del() == -1) return -1; /* delete, line 194 */
00896             break;
00897         case 2:
00898             {   int ret = slice_from_s(1, s_24); /* <-, line 195 */
00899                 if (ret < 0) return ret;
00900             }
00901             break;
00902         case 3:
00903             {   int ret = slice_from_s(1, s_25); /* <-, line 196 */
00904                 if (ret < 0) return ret;
00905             }
00906             break;
00907         case 4:
00908             if (slice_del() == -1) return -1; /* delete, line 197 */
00909             break;
00910         case 5:
00911             if (slice_del() == -1) return -1; /* delete, line 198 */
00912             break;
00913         case 6:
00914             if (slice_del() == -1) return -1; /* delete, line 199 */
00915             break;
00916         case 7:
00917             {   int ret = slice_from_s(1, s_26); /* <-, line 200 */
00918                 if (ret < 0) return ret;
00919             }
00920             break;
00921         case 8:
00922             {   int ret = slice_from_s(1, s_27); /* <-, line 201 */
00923                 if (ret < 0) return ret;
00924             }
00925             break;
00926         case 9:
00927             if (slice_del() == -1) return -1; /* delete, line 202 */
00928             break;
00929         case 10:
00930             if (slice_del() == -1) return -1; /* delete, line 203 */
00931             break;
00932         case 11:
00933             if (slice_del() == -1) return -1; /* delete, line 204 */
00934             break;
00935         case 12:
00936             {   int ret = slice_from_s(1, s_28); /* <-, line 205 */
00937                 if (ret < 0) return ret;
00938             }
00939             break;
00940         case 13:
00941             {   int ret = slice_from_s(1, s_29); /* <-, line 206 */
00942                 if (ret < 0) return ret;
00943             }
00944             break;
00945         case 14:
00946             if (slice_del() == -1) return -1; /* delete, line 207 */
00947             break;
00948         case 15:
00949             if (slice_del() == -1) return -1; /* delete, line 208 */
00950             break;
00951         case 16:
00952             if (slice_del() == -1) return -1; /* delete, line 209 */
00953             break;
00954         case 17:
00955             if (slice_del() == -1) return -1; /* delete, line 210 */
00956             break;
00957         case 18:
00958             {   int ret = slice_from_s(1, s_30); /* <-, line 211 */
00959                 if (ret < 0) return ret;
00960             }
00961             break;
00962         case 19:
00963             {   int ret = slice_from_s(1, s_31); /* <-, line 212 */
00964                 if (ret < 0) return ret;
00965             }
00966             break;
00967         case 20:
00968             if (slice_del() == -1) return -1; /* delete, line 214 */
00969             break;
00970         case 21:
00971             if (slice_del() == -1) return -1; /* delete, line 215 */
00972             break;
00973         case 22:
00974             {   int ret = slice_from_s(1, s_32); /* <-, line 216 */
00975                 if (ret < 0) return ret;
00976             }
00977             break;
00978         case 23:
00979             {   int ret = slice_from_s(1, s_33); /* <-, line 217 */
00980                 if (ret < 0) return ret;
00981             }
00982             break;
00983         case 24:
00984             if (slice_del() == -1) return -1; /* delete, line 218 */
00985             break;
00986         case 25:
00987             if (slice_del() == -1) return -1; /* delete, line 219 */
00988             break;
00989         case 26:
00990             if (slice_del() == -1) return -1; /* delete, line 220 */
00991             break;
00992         case 27:
00993             {   int ret = slice_from_s(1, s_34); /* <-, line 221 */
00994                 if (ret < 0) return ret;
00995             }
00996             break;
00997         case 28:
00998             {   int ret = slice_from_s(1, s_35); /* <-, line 222 */
00999                 if (ret < 0) return ret;
01000             }
01001             break;
01002         case 29:
01003             if (slice_del() == -1) return -1; /* delete, line 223 */
01004             break;
01005     }
01006     return 1;
01007 }
01008 
01009 int Xapian::InternalStemHungarian::stem() { /* forwardmode */
01010     {   int c1 = c; /* do, line 229 */
01011         {   int ret = r_mark_regions(); /* call mark_regions, line 229 */
01012             if (ret == 0) goto lab0;
01013             if (ret < 0) return ret;
01014         }
01015     lab0:
01016         c = c1;
01017     }
01018     lb = c; c = l; /* backwards, line 230 */
01019 
01020     {   int m2 = l - c; (void)m2; /* do, line 231 */
01021         {   int ret = r_instrum(); /* call instrum, line 231 */
01022             if (ret == 0) goto lab1;
01023             if (ret < 0) return ret;
01024         }
01025     lab1:
01026         c = l - m2;
01027     }
01028     {   int m3 = l - c; (void)m3; /* do, line 232 */
01029         {   int ret = r_case(); /* call case, line 232 */
01030             if (ret == 0) goto lab2;
01031             if (ret < 0) return ret;
01032         }
01033     lab2:
01034         c = l - m3;
01035     }
01036     {   int m4 = l - c; (void)m4; /* do, line 233 */
01037         {   int ret = r_case_special(); /* call case_special, line 233 */
01038             if (ret == 0) goto lab3;
01039             if (ret < 0) return ret;
01040         }
01041     lab3:
01042         c = l - m4;
01043     }
01044     {   int m5 = l - c; (void)m5; /* do, line 234 */
01045         {   int ret = r_case_other(); /* call case_other, line 234 */
01046             if (ret == 0) goto lab4;
01047             if (ret < 0) return ret;
01048         }
01049     lab4:
01050         c = l - m5;
01051     }
01052     {   int m6 = l - c; (void)m6; /* do, line 235 */
01053         {   int ret = r_factive(); /* call factive, line 235 */
01054             if (ret == 0) goto lab5;
01055             if (ret < 0) return ret;
01056         }
01057     lab5:
01058         c = l - m6;
01059     }
01060     {   int m7 = l - c; (void)m7; /* do, line 236 */
01061         {   int ret = r_owned(); /* call owned, line 236 */
01062             if (ret == 0) goto lab6;
01063             if (ret < 0) return ret;
01064         }
01065     lab6:
01066         c = l - m7;
01067     }
01068     {   int m8 = l - c; (void)m8; /* do, line 237 */
01069         {   int ret = r_sing_owner(); /* call sing_owner, line 237 */
01070             if (ret == 0) goto lab7;
01071             if (ret < 0) return ret;
01072         }
01073     lab7:
01074         c = l - m8;
01075     }
01076     {   int m9 = l - c; (void)m9; /* do, line 238 */
01077         {   int ret = r_plur_owner(); /* call plur_owner, line 238 */
01078             if (ret == 0) goto lab8;
01079             if (ret < 0) return ret;
01080         }
01081     lab8:
01082         c = l - m9;
01083     }
01084     {   int m10 = l - c; (void)m10; /* do, line 239 */
01085         {   int ret = r_plural(); /* call plural, line 239 */
01086             if (ret == 0) goto lab9;
01087             if (ret < 0) return ret;
01088         }
01089     lab9:
01090         c = l - m10;
01091     }
01092     c = lb;
01093     return 1;
01094 }
01095 
01096 Xapian::InternalStemHungarian::InternalStemHungarian()
01097     : I_p1(0)
01098 {
01099 }
01100 
01101 Xapian::InternalStemHungarian::~InternalStemHungarian()
01102 {
01103 }
01104 
01105 const char *
01106 Xapian::InternalStemHungarian::get_description() const
01107 {
01108     return "hungarian";
01109 }

Documentation for Xapian (version 1.0.10).
Generated on 24 Dec 2008 by Doxygen 1.5.2.