LCOV - code coverage report
Current view: top level - src/backend/snowball/libstemmer - stem_UTF_8_hungarian.c (source / functions) Hit Total Coverage
Test: PostgreSQL 18devel Lines: 0 276 0.0 %
Date: 2025-02-21 17:14:59 Functions: 0 17 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
       2             : 
       3             : #include "header.h"
       4             : 
       5             : #ifdef __cplusplus
       6             : extern "C" {
       7             : #endif
       8             : extern int hungarian_UTF_8_stem(struct SN_env * z);
       9             : #ifdef __cplusplus
      10             : }
      11             : #endif
      12             : static int r_double(struct SN_env * z);
      13             : static int r_undouble(struct SN_env * z);
      14             : static int r_factive(struct SN_env * z);
      15             : static int r_instrum(struct SN_env * z);
      16             : static int r_plur_owner(struct SN_env * z);
      17             : static int r_sing_owner(struct SN_env * z);
      18             : static int r_owned(struct SN_env * z);
      19             : static int r_plural(struct SN_env * z);
      20             : static int r_case_other(struct SN_env * z);
      21             : static int r_case_special(struct SN_env * z);
      22             : static int r_case(struct SN_env * z);
      23             : static int r_v_ending(struct SN_env * z);
      24             : static int r_R1(struct SN_env * z);
      25             : static int r_mark_regions(struct SN_env * z);
      26             : #ifdef __cplusplus
      27             : extern "C" {
      28             : #endif
      29             : 
      30             : 
      31             : extern struct SN_env * hungarian_UTF_8_create_env(void);
      32             : extern void hungarian_UTF_8_close_env(struct SN_env * z);
      33             : 
      34             : 
      35             : #ifdef __cplusplus
      36             : }
      37             : #endif
      38             : static const symbol s_0_0[2] = { 'c', 's' };
      39             : static const symbol s_0_1[3] = { 'd', 'z', 's' };
      40             : static const symbol s_0_2[2] = { 'g', 'y' };
      41             : static const symbol s_0_3[2] = { 'l', 'y' };
      42             : static const symbol s_0_4[2] = { 'n', 'y' };
      43             : static const symbol s_0_5[2] = { 's', 'z' };
      44             : static const symbol s_0_6[2] = { 't', 'y' };
      45             : static const symbol s_0_7[2] = { 'z', 's' };
      46             : 
      47             : static const struct among a_0[8] =
      48             : {
      49             : { 2, s_0_0, -1, -1, 0},
      50             : { 3, s_0_1, -1, -1, 0},
      51             : { 2, s_0_2, -1, -1, 0},
      52             : { 2, s_0_3, -1, -1, 0},
      53             : { 2, s_0_4, -1, -1, 0},
      54             : { 2, s_0_5, -1, -1, 0},
      55             : { 2, s_0_6, -1, -1, 0},
      56             : { 2, s_0_7, -1, -1, 0}
      57             : };
      58             : 
      59             : static const symbol s_1_0[2] = { 0xC3, 0xA1 };
      60             : static const symbol s_1_1[2] = { 0xC3, 0xA9 };
      61             : 
      62             : static const struct among a_1[2] =
      63             : {
      64             : { 2, s_1_0, -1, 1, 0},
      65             : { 2, s_1_1, -1, 2, 0}
      66             : };
      67             : 
      68             : static const symbol s_2_0[2] = { 'b', 'b' };
      69             : static const symbol s_2_1[2] = { 'c', 'c' };
      70             : static const symbol s_2_2[2] = { 'd', 'd' };
      71             : static const symbol s_2_3[2] = { 'f', 'f' };
      72             : static const symbol s_2_4[2] = { 'g', 'g' };
      73             : static const symbol s_2_5[2] = { 'j', 'j' };
      74             : static const symbol s_2_6[2] = { 'k', 'k' };
      75             : static const symbol s_2_7[2] = { 'l', 'l' };
      76             : static const symbol s_2_8[2] = { 'm', 'm' };
      77             : static const symbol s_2_9[2] = { 'n', 'n' };
      78             : static const symbol s_2_10[2] = { 'p', 'p' };
      79             : static const symbol s_2_11[2] = { 'r', 'r' };
      80             : static const symbol s_2_12[3] = { 'c', 'c', 's' };
      81             : static const symbol s_2_13[2] = { 's', 's' };
      82             : static const symbol s_2_14[3] = { 'z', 'z', 's' };
      83             : static const symbol s_2_15[2] = { 't', 't' };
      84             : static const symbol s_2_16[2] = { 'v', 'v' };
      85             : static const symbol s_2_17[3] = { 'g', 'g', 'y' };
      86             : static const symbol s_2_18[3] = { 'l', 'l', 'y' };
      87             : static const symbol s_2_19[3] = { 'n', 'n', 'y' };
      88             : static const symbol s_2_20[3] = { 't', 't', 'y' };
      89             : static const symbol s_2_21[3] = { 's', 's', 'z' };
      90             : static const symbol s_2_22[2] = { 'z', 'z' };
      91             : 
      92             : static const struct among a_2[23] =
      93             : {
      94             : { 2, s_2_0, -1, -1, 0},
      95             : { 2, s_2_1, -1, -1, 0},
      96             : { 2, s_2_2, -1, -1, 0},
      97             : { 2, s_2_3, -1, -1, 0},
      98             : { 2, s_2_4, -1, -1, 0},
      99             : { 2, s_2_5, -1, -1, 0},
     100             : { 2, s_2_6, -1, -1, 0},
     101             : { 2, s_2_7, -1, -1, 0},
     102             : { 2, s_2_8, -1, -1, 0},
     103             : { 2, s_2_9, -1, -1, 0},
     104             : { 2, s_2_10, -1, -1, 0},
     105             : { 2, s_2_11, -1, -1, 0},
     106             : { 3, s_2_12, -1, -1, 0},
     107             : { 2, s_2_13, -1, -1, 0},
     108             : { 3, s_2_14, -1, -1, 0},
     109             : { 2, s_2_15, -1, -1, 0},
     110             : { 2, s_2_16, -1, -1, 0},
     111             : { 3, s_2_17, -1, -1, 0},
     112             : { 3, s_2_18, -1, -1, 0},
     113             : { 3, s_2_19, -1, -1, 0},
     114             : { 3, s_2_20, -1, -1, 0},
     115             : { 3, s_2_21, -1, -1, 0},
     116             : { 2, s_2_22, -1, -1, 0}
     117             : };
     118             : 
     119             : static const symbol s_3_0[2] = { 'a', 'l' };
     120             : static const symbol s_3_1[2] = { 'e', 'l' };
     121             : 
     122             : static const struct among a_3[2] =
     123             : {
     124             : { 2, s_3_0, -1, 1, 0},
     125             : { 2, s_3_1, -1, 1, 0}
     126             : };
     127             : 
     128             : static const symbol s_4_0[2] = { 'b', 'a' };
     129             : static const symbol s_4_1[2] = { 'r', 'a' };
     130             : static const symbol s_4_2[2] = { 'b', 'e' };
     131             : static const symbol s_4_3[2] = { 'r', 'e' };
     132             : static const symbol s_4_4[2] = { 'i', 'g' };
     133             : static const symbol s_4_5[3] = { 'n', 'a', 'k' };
     134             : static const symbol s_4_6[3] = { 'n', 'e', 'k' };
     135             : static const symbol s_4_7[3] = { 'v', 'a', 'l' };
     136             : static const symbol s_4_8[3] = { 'v', 'e', 'l' };
     137             : static const symbol s_4_9[2] = { 'u', 'l' };
     138             : static const symbol s_4_10[4] = { 'b', 0xC5, 0x91, 'l' };
     139             : static const symbol s_4_11[4] = { 'r', 0xC5, 0x91, 'l' };
     140             : static const symbol s_4_12[4] = { 't', 0xC5, 0x91, 'l' };
     141             : static const symbol s_4_13[4] = { 'n', 0xC3, 0xA1, 'l' };
     142             : static const symbol s_4_14[4] = { 'n', 0xC3, 0xA9, 'l' };
     143             : static const symbol s_4_15[4] = { 'b', 0xC3, 0xB3, 'l' };
     144             : static const symbol s_4_16[4] = { 'r', 0xC3, 0xB3, 'l' };
     145             : static const symbol s_4_17[4] = { 't', 0xC3, 0xB3, 'l' };
     146             : static const symbol s_4_18[3] = { 0xC3, 0xBC, 'l' };
     147             : static const symbol s_4_19[1] = { 'n' };
     148             : static const symbol s_4_20[2] = { 'a', 'n' };
     149             : static const symbol s_4_21[3] = { 'b', 'a', 'n' };
     150             : static const symbol s_4_22[2] = { 'e', 'n' };
     151             : static const symbol s_4_23[3] = { 'b', 'e', 'n' };
     152             : static const symbol s_4_24[7] = { 'k', 0xC3, 0xA9, 'p', 'p', 'e', 'n' };
     153             : static const symbol s_4_25[2] = { 'o', 'n' };
     154             : static const symbol s_4_26[3] = { 0xC3, 0xB6, 'n' };
     155             : static const symbol s_4_27[5] = { 'k', 0xC3, 0xA9, 'p', 'p' };
     156             : static const symbol s_4_28[3] = { 'k', 'o', 'r' };
     157             : static const symbol s_4_29[1] = { 't' };
     158             : static const symbol s_4_30[2] = { 'a', 't' };
     159             : static const symbol s_4_31[2] = { 'e', 't' };
     160             : static const symbol s_4_32[5] = { 'k', 0xC3, 0xA9, 'n', 't' };
     161             : static const symbol s_4_33[7] = { 'a', 'n', 'k', 0xC3, 0xA9, 'n', 't' };
     162             : static const symbol s_4_34[7] = { 'e', 'n', 'k', 0xC3, 0xA9, 'n', 't' };
     163             : static const symbol s_4_35[7] = { 'o', 'n', 'k', 0xC3, 0xA9, 'n', 't' };
     164             : static const symbol s_4_36[2] = { 'o', 't' };
     165             : static const symbol s_4_37[4] = { 0xC3, 0xA9, 'r', 't' };
     166             : static const symbol s_4_38[3] = { 0xC3, 0xB6, 't' };
     167             : static const symbol s_4_39[3] = { 'h', 'e', 'z' };
     168             : static const symbol s_4_40[3] = { 'h', 'o', 'z' };
     169             : static const symbol s_4_41[4] = { 'h', 0xC3, 0xB6, 'z' };
     170             : static const symbol s_4_42[3] = { 'v', 0xC3, 0xA1 };
     171             : static const symbol s_4_43[3] = { 'v', 0xC3, 0xA9 };
     172             : 
     173             : static const struct among a_4[44] =
     174             : {
     175             : { 2, s_4_0, -1, -1, 0},
     176             : { 2, s_4_1, -1, -1, 0},
     177             : { 2, s_4_2, -1, -1, 0},
     178             : { 2, s_4_3, -1, -1, 0},
     179             : { 2, s_4_4, -1, -1, 0},
     180             : { 3, s_4_5, -1, -1, 0},
     181             : { 3, s_4_6, -1, -1, 0},
     182             : { 3, s_4_7, -1, -1, 0},
     183             : { 3, s_4_8, -1, -1, 0},
     184             : { 2, s_4_9, -1, -1, 0},
     185             : { 4, s_4_10, -1, -1, 0},
     186             : { 4, s_4_11, -1, -1, 0},
     187             : { 4, s_4_12, -1, -1, 0},
     188             : { 4, s_4_13, -1, -1, 0},
     189             : { 4, s_4_14, -1, -1, 0},
     190             : { 4, s_4_15, -1, -1, 0},
     191             : { 4, s_4_16, -1, -1, 0},
     192             : { 4, s_4_17, -1, -1, 0},
     193             : { 3, s_4_18, -1, -1, 0},
     194             : { 1, s_4_19, -1, -1, 0},
     195             : { 2, s_4_20, 19, -1, 0},
     196             : { 3, s_4_21, 20, -1, 0},
     197             : { 2, s_4_22, 19, -1, 0},
     198             : { 3, s_4_23, 22, -1, 0},
     199             : { 7, s_4_24, 22, -1, 0},
     200             : { 2, s_4_25, 19, -1, 0},
     201             : { 3, s_4_26, 19, -1, 0},
     202             : { 5, s_4_27, -1, -1, 0},
     203             : { 3, s_4_28, -1, -1, 0},
     204             : { 1, s_4_29, -1, -1, 0},
     205             : { 2, s_4_30, 29, -1, 0},
     206             : { 2, s_4_31, 29, -1, 0},
     207             : { 5, s_4_32, 29, -1, 0},
     208             : { 7, s_4_33, 32, -1, 0},
     209             : { 7, s_4_34, 32, -1, 0},
     210             : { 7, s_4_35, 32, -1, 0},
     211             : { 2, s_4_36, 29, -1, 0},
     212             : { 4, s_4_37, 29, -1, 0},
     213             : { 3, s_4_38, 29, -1, 0},
     214             : { 3, s_4_39, -1, -1, 0},
     215             : { 3, s_4_40, -1, -1, 0},
     216             : { 4, s_4_41, -1, -1, 0},
     217             : { 3, s_4_42, -1, -1, 0},
     218             : { 3, s_4_43, -1, -1, 0}
     219             : };
     220             : 
     221             : static const symbol s_5_0[3] = { 0xC3, 0xA1, 'n' };
     222             : static const symbol s_5_1[3] = { 0xC3, 0xA9, 'n' };
     223             : static const symbol s_5_2[8] = { 0xC3, 0xA1, 'n', 'k', 0xC3, 0xA9, 'n', 't' };
     224             : 
     225             : static const struct among a_5[3] =
     226             : {
     227             : { 3, s_5_0, -1, 2, 0},
     228             : { 3, s_5_1, -1, 1, 0},
     229             : { 8, s_5_2, -1, 2, 0}
     230             : };
     231             : 
     232             : static const symbol s_6_0[4] = { 's', 't', 'u', 'l' };
     233             : static const symbol s_6_1[5] = { 'a', 's', 't', 'u', 'l' };
     234             : static const symbol s_6_2[6] = { 0xC3, 0xA1, 's', 't', 'u', 'l' };
     235             : static const symbol s_6_3[5] = { 's', 't', 0xC3, 0xBC, 'l' };
     236             : static const symbol s_6_4[6] = { 'e', 's', 't', 0xC3, 0xBC, 'l' };
     237             : static const symbol s_6_5[7] = { 0xC3, 0xA9, 's', 't', 0xC3, 0xBC, 'l' };
     238             : 
     239             : static const struct among a_6[6] =
     240             : {
     241             : { 4, s_6_0, -1, 1, 0},
     242             : { 5, s_6_1, 0, 1, 0},
     243             : { 6, s_6_2, 0, 2, 0},
     244             : { 5, s_6_3, -1, 1, 0},
     245             : { 6, s_6_4, 3, 1, 0},
     246             : { 7, s_6_5, 3, 3, 0}
     247             : };
     248             : 
     249             : static const symbol s_7_0[2] = { 0xC3, 0xA1 };
     250             : static const symbol s_7_1[2] = { 0xC3, 0xA9 };
     251             : 
     252             : static const struct among a_7[2] =
     253             : {
     254             : { 2, s_7_0, -1, 1, 0},
     255             : { 2, s_7_1, -1, 1, 0}
     256             : };
     257             : 
     258             : static const symbol s_8_0[1] = { 'k' };
     259             : static const symbol s_8_1[2] = { 'a', 'k' };
     260             : static const symbol s_8_2[2] = { 'e', 'k' };
     261             : static const symbol s_8_3[2] = { 'o', 'k' };
     262             : static const symbol s_8_4[3] = { 0xC3, 0xA1, 'k' };
     263             : static const symbol s_8_5[3] = { 0xC3, 0xA9, 'k' };
     264             : static const symbol s_8_6[3] = { 0xC3, 0xB6, 'k' };
     265             : 
     266             : static const struct among a_8[7] =
     267             : {
     268             : { 1, s_8_0, -1, 3, 0},
     269             : { 2, s_8_1, 0, 3, 0},
     270             : { 2, s_8_2, 0, 3, 0},
     271             : { 2, s_8_3, 0, 3, 0},
     272             : { 3, s_8_4, 0, 1, 0},
     273             : { 3, s_8_5, 0, 2, 0},
     274             : { 3, s_8_6, 0, 3, 0}
     275             : };
     276             : 
     277             : static const symbol s_9_0[3] = { 0xC3, 0xA9, 'i' };
     278             : static const symbol s_9_1[5] = { 0xC3, 0xA1, 0xC3, 0xA9, 'i' };
     279             : static const symbol s_9_2[5] = { 0xC3, 0xA9, 0xC3, 0xA9, 'i' };
     280             : static const symbol s_9_3[2] = { 0xC3, 0xA9 };
     281             : static const symbol s_9_4[3] = { 'k', 0xC3, 0xA9 };
     282             : static const symbol s_9_5[4] = { 'a', 'k', 0xC3, 0xA9 };
     283             : static const symbol s_9_6[4] = { 'e', 'k', 0xC3, 0xA9 };
     284             : static const symbol s_9_7[4] = { 'o', 'k', 0xC3, 0xA9 };
     285             : static const symbol s_9_8[5] = { 0xC3, 0xA1, 'k', 0xC3, 0xA9 };
     286             : static const symbol s_9_9[5] = { 0xC3, 0xA9, 'k', 0xC3, 0xA9 };
     287             : static const symbol s_9_10[5] = { 0xC3, 0xB6, 'k', 0xC3, 0xA9 };
     288             : static const symbol s_9_11[4] = { 0xC3, 0xA9, 0xC3, 0xA9 };
     289             : 
     290             : static const struct among a_9[12] =
     291             : {
     292             : { 3, s_9_0, -1, 1, 0},
     293             : { 5, s_9_1, 0, 3, 0},
     294             : { 5, s_9_2, 0, 2, 0},
     295             : { 2, s_9_3, -1, 1, 0},
     296             : { 3, s_9_4, 3, 1, 0},
     297             : { 4, s_9_5, 4, 1, 0},
     298             : { 4, s_9_6, 4, 1, 0},
     299             : { 4, s_9_7, 4, 1, 0},
     300             : { 5, s_9_8, 4, 3, 0},
     301             : { 5, s_9_9, 4, 2, 0},
     302             : { 5, s_9_10, 4, 1, 0},
     303             : { 4, s_9_11, 3, 2, 0}
     304             : };
     305             : 
     306             : static const symbol s_10_0[1] = { 'a' };
     307             : static const symbol s_10_1[2] = { 'j', 'a' };
     308             : static const symbol s_10_2[1] = { 'd' };
     309             : static const symbol s_10_3[2] = { 'a', 'd' };
     310             : static const symbol s_10_4[2] = { 'e', 'd' };
     311             : static const symbol s_10_5[2] = { 'o', 'd' };
     312             : static const symbol s_10_6[3] = { 0xC3, 0xA1, 'd' };
     313             : static const symbol s_10_7[3] = { 0xC3, 0xA9, 'd' };
     314             : static const symbol s_10_8[3] = { 0xC3, 0xB6, 'd' };
     315             : static const symbol s_10_9[1] = { 'e' };
     316             : static const symbol s_10_10[2] = { 'j', 'e' };
     317             : static const symbol s_10_11[2] = { 'n', 'k' };
     318             : static const symbol s_10_12[3] = { 'u', 'n', 'k' };
     319             : static const symbol s_10_13[4] = { 0xC3, 0xA1, 'n', 'k' };
     320             : static const symbol s_10_14[4] = { 0xC3, 0xA9, 'n', 'k' };
     321             : static const symbol s_10_15[4] = { 0xC3, 0xBC, 'n', 'k' };
     322             : static const symbol s_10_16[2] = { 'u', 'k' };
     323             : static const symbol s_10_17[3] = { 'j', 'u', 'k' };
     324             : static const symbol s_10_18[5] = { 0xC3, 0xA1, 'j', 'u', 'k' };
     325             : static const symbol s_10_19[3] = { 0xC3, 0xBC, 'k' };
     326             : static const symbol s_10_20[4] = { 'j', 0xC3, 0xBC, 'k' };
     327             : static const symbol s_10_21[6] = { 0xC3, 0xA9, 'j', 0xC3, 0xBC, 'k' };
     328             : static const symbol s_10_22[1] = { 'm' };
     329             : static const symbol s_10_23[2] = { 'a', 'm' };
     330             : static const symbol s_10_24[2] = { 'e', 'm' };
     331             : static const symbol s_10_25[2] = { 'o', 'm' };
     332             : static const symbol s_10_26[3] = { 0xC3, 0xA1, 'm' };
     333             : static const symbol s_10_27[3] = { 0xC3, 0xA9, 'm' };
     334             : static const symbol s_10_28[1] = { 'o' };
     335             : static const symbol s_10_29[2] = { 0xC3, 0xA1 };
     336             : static const symbol s_10_30[2] = { 0xC3, 0xA9 };
     337             : 
     338             : static const struct among a_10[31] =
     339             : {
     340             : { 1, s_10_0, -1, 1, 0},
     341             : { 2, s_10_1, 0, 1, 0},
     342             : { 1, s_10_2, -1, 1, 0},
     343             : { 2, s_10_3, 2, 1, 0},
     344             : { 2, s_10_4, 2, 1, 0},
     345             : { 2, s_10_5, 2, 1, 0},
     346             : { 3, s_10_6, 2, 2, 0},
     347             : { 3, s_10_7, 2, 3, 0},
     348             : { 3, s_10_8, 2, 1, 0},
     349             : { 1, s_10_9, -1, 1, 0},
     350             : { 2, s_10_10, 9, 1, 0},
     351             : { 2, s_10_11, -1, 1, 0},
     352             : { 3, s_10_12, 11, 1, 0},
     353             : { 4, s_10_13, 11, 2, 0},
     354             : { 4, s_10_14, 11, 3, 0},
     355             : { 4, s_10_15, 11, 1, 0},
     356             : { 2, s_10_16, -1, 1, 0},
     357             : { 3, s_10_17, 16, 1, 0},
     358             : { 5, s_10_18, 17, 2, 0},
     359             : { 3, s_10_19, -1, 1, 0},
     360             : { 4, s_10_20, 19, 1, 0},
     361             : { 6, s_10_21, 20, 3, 0},
     362             : { 1, s_10_22, -1, 1, 0},
     363             : { 2, s_10_23, 22, 1, 0},
     364             : { 2, s_10_24, 22, 1, 0},
     365             : { 2, s_10_25, 22, 1, 0},
     366             : { 3, s_10_26, 22, 2, 0},
     367             : { 3, s_10_27, 22, 3, 0},
     368             : { 1, s_10_28, -1, 1, 0},
     369             : { 2, s_10_29, -1, 2, 0},
     370             : { 2, s_10_30, -1, 3, 0}
     371             : };
     372             : 
     373             : static const symbol s_11_0[2] = { 'i', 'd' };
     374             : static const symbol s_11_1[3] = { 'a', 'i', 'd' };
     375             : static const symbol s_11_2[4] = { 'j', 'a', 'i', 'd' };
     376             : static const symbol s_11_3[3] = { 'e', 'i', 'd' };
     377             : static const symbol s_11_4[4] = { 'j', 'e', 'i', 'd' };
     378             : static const symbol s_11_5[4] = { 0xC3, 0xA1, 'i', 'd' };
     379             : static const symbol s_11_6[4] = { 0xC3, 0xA9, 'i', 'd' };
     380             : static const symbol s_11_7[1] = { 'i' };
     381             : static const symbol s_11_8[2] = { 'a', 'i' };
     382             : static const symbol s_11_9[3] = { 'j', 'a', 'i' };
     383             : static const symbol s_11_10[2] = { 'e', 'i' };
     384             : static const symbol s_11_11[3] = { 'j', 'e', 'i' };
     385             : static const symbol s_11_12[3] = { 0xC3, 0xA1, 'i' };
     386             : static const symbol s_11_13[3] = { 0xC3, 0xA9, 'i' };
     387             : static const symbol s_11_14[4] = { 'i', 't', 'e', 'k' };
     388             : static const symbol s_11_15[5] = { 'e', 'i', 't', 'e', 'k' };
     389             : static const symbol s_11_16[6] = { 'j', 'e', 'i', 't', 'e', 'k' };
     390             : static const symbol s_11_17[6] = { 0xC3, 0xA9, 'i', 't', 'e', 'k' };
     391             : static const symbol s_11_18[2] = { 'i', 'k' };
     392             : static const symbol s_11_19[3] = { 'a', 'i', 'k' };
     393             : static const symbol s_11_20[4] = { 'j', 'a', 'i', 'k' };
     394             : static const symbol s_11_21[3] = { 'e', 'i', 'k' };
     395             : static const symbol s_11_22[4] = { 'j', 'e', 'i', 'k' };
     396             : static const symbol s_11_23[4] = { 0xC3, 0xA1, 'i', 'k' };
     397             : static const symbol s_11_24[4] = { 0xC3, 0xA9, 'i', 'k' };
     398             : static const symbol s_11_25[3] = { 'i', 'n', 'k' };
     399             : static const symbol s_11_26[4] = { 'a', 'i', 'n', 'k' };
     400             : static const symbol s_11_27[5] = { 'j', 'a', 'i', 'n', 'k' };
     401             : static const symbol s_11_28[4] = { 'e', 'i', 'n', 'k' };
     402             : static const symbol s_11_29[5] = { 'j', 'e', 'i', 'n', 'k' };
     403             : static const symbol s_11_30[5] = { 0xC3, 0xA1, 'i', 'n', 'k' };
     404             : static const symbol s_11_31[5] = { 0xC3, 0xA9, 'i', 'n', 'k' };
     405             : static const symbol s_11_32[5] = { 'a', 'i', 't', 'o', 'k' };
     406             : static const symbol s_11_33[6] = { 'j', 'a', 'i', 't', 'o', 'k' };
     407             : static const symbol s_11_34[6] = { 0xC3, 0xA1, 'i', 't', 'o', 'k' };
     408             : static const symbol s_11_35[2] = { 'i', 'm' };
     409             : static const symbol s_11_36[3] = { 'a', 'i', 'm' };
     410             : static const symbol s_11_37[4] = { 'j', 'a', 'i', 'm' };
     411             : static const symbol s_11_38[3] = { 'e', 'i', 'm' };
     412             : static const symbol s_11_39[4] = { 'j', 'e', 'i', 'm' };
     413             : static const symbol s_11_40[4] = { 0xC3, 0xA1, 'i', 'm' };
     414             : static const symbol s_11_41[4] = { 0xC3, 0xA9, 'i', 'm' };
     415             : 
     416             : static const struct among a_11[42] =
     417             : {
     418             : { 2, s_11_0, -1, 1, 0},
     419             : { 3, s_11_1, 0, 1, 0},
     420             : { 4, s_11_2, 1, 1, 0},
     421             : { 3, s_11_3, 0, 1, 0},
     422             : { 4, s_11_4, 3, 1, 0},
     423             : { 4, s_11_5, 0, 2, 0},
     424             : { 4, s_11_6, 0, 3, 0},
     425             : { 1, s_11_7, -1, 1, 0},
     426             : { 2, s_11_8, 7, 1, 0},
     427             : { 3, s_11_9, 8, 1, 0},
     428             : { 2, s_11_10, 7, 1, 0},
     429             : { 3, s_11_11, 10, 1, 0},
     430             : { 3, s_11_12, 7, 2, 0},
     431             : { 3, s_11_13, 7, 3, 0},
     432             : { 4, s_11_14, -1, 1, 0},
     433             : { 5, s_11_15, 14, 1, 0},
     434             : { 6, s_11_16, 15, 1, 0},
     435             : { 6, s_11_17, 14, 3, 0},
     436             : { 2, s_11_18, -1, 1, 0},
     437             : { 3, s_11_19, 18, 1, 0},
     438             : { 4, s_11_20, 19, 1, 0},
     439             : { 3, s_11_21, 18, 1, 0},
     440             : { 4, s_11_22, 21, 1, 0},
     441             : { 4, s_11_23, 18, 2, 0},
     442             : { 4, s_11_24, 18, 3, 0},
     443             : { 3, s_11_25, -1, 1, 0},
     444             : { 4, s_11_26, 25, 1, 0},
     445             : { 5, s_11_27, 26, 1, 0},
     446             : { 4, s_11_28, 25, 1, 0},
     447             : { 5, s_11_29, 28, 1, 0},
     448             : { 5, s_11_30, 25, 2, 0},
     449             : { 5, s_11_31, 25, 3, 0},
     450             : { 5, s_11_32, -1, 1, 0},
     451             : { 6, s_11_33, 32, 1, 0},
     452             : { 6, s_11_34, -1, 2, 0},
     453             : { 2, s_11_35, -1, 1, 0},
     454             : { 3, s_11_36, 35, 1, 0},
     455             : { 4, s_11_37, 36, 1, 0},
     456             : { 3, s_11_38, 35, 1, 0},
     457             : { 4, s_11_39, 38, 1, 0},
     458             : { 4, s_11_40, 35, 2, 0},
     459             : { 4, s_11_41, 35, 3, 0}
     460             : };
     461             : 
     462             : static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 36, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1 };
     463             : 
     464             : static const symbol s_0[] = { 'a' };
     465             : static const symbol s_1[] = { 'e' };
     466             : static const symbol s_2[] = { 'e' };
     467             : static const symbol s_3[] = { 'a' };
     468             : static const symbol s_4[] = { 'a' };
     469             : static const symbol s_5[] = { 'e' };
     470             : static const symbol s_6[] = { 'a' };
     471             : static const symbol s_7[] = { 'e' };
     472             : static const symbol s_8[] = { 'e' };
     473             : static const symbol s_9[] = { 'a' };
     474             : static const symbol s_10[] = { 'a' };
     475             : static const symbol s_11[] = { 'e' };
     476             : static const symbol s_12[] = { 'a' };
     477             : static const symbol s_13[] = { 'e' };
     478             : 
     479           0 : static int r_mark_regions(struct SN_env * z) {
     480           0 :     z->I[0] = z->l;
     481           0 :     {   int c1 = z->c;
     482           0 :         if (in_grouping_U(z, g_v, 97, 369, 0)) goto lab1;
     483             : 
     484           0 :         if (in_grouping_U(z, g_v, 97, 369, 1) < 0) goto lab1;
     485           0 :         {   int c2 = z->c;
     486           0 :             if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 3 || !((101187584 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab3;
     487           0 :             if (!find_among(z, a_0, 8)) goto lab3;
     488           0 :             goto lab2;
     489           0 :         lab3:
     490           0 :             z->c = c2;
     491           0 :             {   int ret = skip_utf8(z->p, z->c, z->l, 1);
     492           0 :                 if (ret < 0) goto lab1;
     493           0 :                 z->c = ret;
     494             :             }
     495             :         }
     496           0 :     lab2:
     497           0 :         z->I[0] = z->c;
     498           0 :         goto lab0;
     499           0 :     lab1:
     500           0 :         z->c = c1;
     501           0 :         if (out_grouping_U(z, g_v, 97, 369, 0)) return 0;
     502             : 
     503             :         {
     504           0 :             int ret = out_grouping_U(z, g_v, 97, 369, 1);
     505           0 :             if (ret < 0) return 0;
     506           0 :             z->c += ret;
     507             :         }
     508           0 :         z->I[0] = z->c;
     509             :     }
     510           0 : lab0:
     511           0 :     return 1;
     512             : }
     513             : 
     514           0 : static int r_R1(struct SN_env * z) {
     515           0 :     return z->I[0] <= z->c;
     516             : }
     517             : 
     518           0 : static int r_v_ending(struct SN_env * z) {
     519             :     int among_var;
     520           0 :     z->ket = z->c;
     521           0 :     if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 161 && z->p[z->c - 1] != 169)) return 0;
     522           0 :     among_var = find_among_b(z, a_1, 2);
     523           0 :     if (!among_var) return 0;
     524           0 :     z->bra = z->c;
     525           0 :     {   int ret = r_R1(z);
     526           0 :         if (ret <= 0) return ret;
     527             :     }
     528           0 :     switch (among_var) {
     529           0 :         case 1:
     530           0 :             {   int ret = slice_from_s(z, 1, s_0);
     531           0 :                 if (ret < 0) return ret;
     532             :             }
     533           0 :             break;
     534           0 :         case 2:
     535           0 :             {   int ret = slice_from_s(z, 1, s_1);
     536           0 :                 if (ret < 0) return ret;
     537             :             }
     538           0 :             break;
     539             :     }
     540           0 :     return 1;
     541             : }
     542             : 
     543           0 : static int r_double(struct SN_env * z) {
     544           0 :     {   int m_test1 = z->l - z->c;
     545           0 :         if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((106790108 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
     546           0 :         if (!find_among_b(z, a_2, 23)) return 0;
     547           0 :         z->c = z->l - m_test1;
     548             :     }
     549           0 :     return 1;
     550             : }
     551             : 
     552           0 : static int r_undouble(struct SN_env * z) {
     553           0 :     {   int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
     554           0 :         if (ret < 0) return 0;
     555           0 :         z->c = ret;
     556             :     }
     557           0 :     z->ket = z->c;
     558           0 :     {   int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
     559           0 :         if (ret < 0) return 0;
     560           0 :         z->c = ret;
     561             :     }
     562           0 :     z->bra = z->c;
     563           0 :     {   int ret = slice_del(z);
     564           0 :         if (ret < 0) return ret;
     565             :     }
     566           0 :     return 1;
     567             : }
     568             : 
     569           0 : static int r_instrum(struct SN_env * z) {
     570           0 :     z->ket = z->c;
     571           0 :     if (z->c - 1 <= z->lb || z->p[z->c - 1] != 108) return 0;
     572           0 :     if (!find_among_b(z, a_3, 2)) return 0;
     573           0 :     z->bra = z->c;
     574           0 :     {   int ret = r_R1(z);
     575           0 :         if (ret <= 0) return ret;
     576             :     }
     577           0 :     {   int ret = r_double(z);
     578           0 :         if (ret <= 0) return ret;
     579             :     }
     580           0 :     {   int ret = slice_del(z);
     581           0 :         if (ret < 0) return ret;
     582             :     }
     583           0 :     {   int ret = r_undouble(z);
     584           0 :         if (ret <= 0) return ret;
     585             :     }
     586           0 :     return 1;
     587             : }
     588             : 
     589           0 : static int r_case(struct SN_env * z) {
     590           0 :     z->ket = z->c;
     591           0 :     if (!find_among_b(z, a_4, 44)) return 0;
     592           0 :     z->bra = z->c;
     593           0 :     {   int ret = r_R1(z);
     594           0 :         if (ret <= 0) return ret;
     595             :     }
     596           0 :     {   int ret = slice_del(z);
     597           0 :         if (ret < 0) return ret;
     598             :     }
     599           0 :     {   int ret = r_v_ending(z);
     600           0 :         if (ret <= 0) return ret;
     601             :     }
     602           0 :     return 1;
     603             : }
     604             : 
     605           0 : static int r_case_special(struct SN_env * z) {
     606             :     int among_var;
     607           0 :     z->ket = z->c;
     608           0 :     if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 110 && z->p[z->c - 1] != 116)) return 0;
     609           0 :     among_var = find_among_b(z, a_5, 3);
     610           0 :     if (!among_var) return 0;
     611           0 :     z->bra = z->c;
     612           0 :     {   int ret = r_R1(z);
     613           0 :         if (ret <= 0) return ret;
     614             :     }
     615           0 :     switch (among_var) {
     616           0 :         case 1:
     617           0 :             {   int ret = slice_from_s(z, 1, s_2);
     618           0 :                 if (ret < 0) return ret;
     619             :             }
     620           0 :             break;
     621           0 :         case 2:
     622           0 :             {   int ret = slice_from_s(z, 1, s_3);
     623           0 :                 if (ret < 0) return ret;
     624             :             }
     625           0 :             break;
     626             :     }
     627           0 :     return 1;
     628             : }
     629             : 
     630           0 : static int r_case_other(struct SN_env * z) {
     631             :     int among_var;
     632           0 :     z->ket = z->c;
     633           0 :     if (z->c - 3 <= z->lb || z->p[z->c - 1] != 108) return 0;
     634           0 :     among_var = find_among_b(z, a_6, 6);
     635           0 :     if (!among_var) return 0;
     636           0 :     z->bra = z->c;
     637           0 :     {   int ret = r_R1(z);
     638           0 :         if (ret <= 0) return ret;
     639             :     }
     640           0 :     switch (among_var) {
     641           0 :         case 1:
     642           0 :             {   int ret = slice_del(z);
     643           0 :                 if (ret < 0) return ret;
     644             :             }
     645           0 :             break;
     646           0 :         case 2:
     647           0 :             {   int ret = slice_from_s(z, 1, s_4);
     648           0 :                 if (ret < 0) return ret;
     649             :             }
     650           0 :             break;
     651           0 :         case 3:
     652           0 :             {   int ret = slice_from_s(z, 1, s_5);
     653           0 :                 if (ret < 0) return ret;
     654             :             }
     655           0 :             break;
     656             :     }
     657           0 :     return 1;
     658             : }
     659             : 
     660           0 : static int r_factive(struct SN_env * z) {
     661           0 :     z->ket = z->c;
     662           0 :     if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 161 && z->p[z->c - 1] != 169)) return 0;
     663           0 :     if (!find_among_b(z, a_7, 2)) return 0;
     664           0 :     z->bra = z->c;
     665           0 :     {   int ret = r_R1(z);
     666           0 :         if (ret <= 0) return ret;
     667             :     }
     668           0 :     {   int ret = r_double(z);
     669           0 :         if (ret <= 0) return ret;
     670             :     }
     671           0 :     {   int ret = slice_del(z);
     672           0 :         if (ret < 0) return ret;
     673             :     }
     674           0 :     {   int ret = r_undouble(z);
     675           0 :         if (ret <= 0) return ret;
     676             :     }
     677           0 :     return 1;
     678             : }
     679             : 
     680           0 : static int r_plural(struct SN_env * z) {
     681             :     int among_var;
     682           0 :     z->ket = z->c;
     683           0 :     if (z->c <= z->lb || z->p[z->c - 1] != 107) return 0;
     684           0 :     among_var = find_among_b(z, a_8, 7);
     685           0 :     if (!among_var) return 0;
     686           0 :     z->bra = z->c;
     687           0 :     {   int ret = r_R1(z);
     688           0 :         if (ret <= 0) return ret;
     689             :     }
     690           0 :     switch (among_var) {
     691           0 :         case 1:
     692           0 :             {   int ret = slice_from_s(z, 1, s_6);
     693           0 :                 if (ret < 0) return ret;
     694             :             }
     695           0 :             break;
     696           0 :         case 2:
     697           0 :             {   int ret = slice_from_s(z, 1, s_7);
     698           0 :                 if (ret < 0) return ret;
     699             :             }
     700           0 :             break;
     701           0 :         case 3:
     702           0 :             {   int ret = slice_del(z);
     703           0 :                 if (ret < 0) return ret;
     704             :             }
     705           0 :             break;
     706             :     }
     707           0 :     return 1;
     708             : }
     709             : 
     710           0 : static int r_owned(struct SN_env * z) {
     711             :     int among_var;
     712           0 :     z->ket = z->c;
     713           0 :     if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 169)) return 0;
     714           0 :     among_var = find_among_b(z, a_9, 12);
     715           0 :     if (!among_var) return 0;
     716           0 :     z->bra = z->c;
     717           0 :     {   int ret = r_R1(z);
     718           0 :         if (ret <= 0) return ret;
     719             :     }
     720           0 :     switch (among_var) {
     721           0 :         case 1:
     722           0 :             {   int ret = slice_del(z);
     723           0 :                 if (ret < 0) return ret;
     724             :             }
     725           0 :             break;
     726           0 :         case 2:
     727           0 :             {   int ret = slice_from_s(z, 1, s_8);
     728           0 :                 if (ret < 0) return ret;
     729             :             }
     730           0 :             break;
     731           0 :         case 3:
     732           0 :             {   int ret = slice_from_s(z, 1, s_9);
     733           0 :                 if (ret < 0) return ret;
     734             :             }
     735           0 :             break;
     736             :     }
     737           0 :     return 1;
     738             : }
     739             : 
     740           0 : static int r_sing_owner(struct SN_env * z) {
     741             :     int among_var;
     742           0 :     z->ket = z->c;
     743           0 :     among_var = find_among_b(z, a_10, 31);
     744           0 :     if (!among_var) return 0;
     745           0 :     z->bra = z->c;
     746           0 :     {   int ret = r_R1(z);
     747           0 :         if (ret <= 0) return ret;
     748             :     }
     749           0 :     switch (among_var) {
     750           0 :         case 1:
     751           0 :             {   int ret = slice_del(z);
     752           0 :                 if (ret < 0) return ret;
     753             :             }
     754           0 :             break;
     755           0 :         case 2:
     756           0 :             {   int ret = slice_from_s(z, 1, s_10);
     757           0 :                 if (ret < 0) return ret;
     758             :             }
     759           0 :             break;
     760           0 :         case 3:
     761           0 :             {   int ret = slice_from_s(z, 1, s_11);
     762           0 :                 if (ret < 0) return ret;
     763             :             }
     764           0 :             break;
     765             :     }
     766           0 :     return 1;
     767             : }
     768             : 
     769           0 : static int r_plur_owner(struct SN_env * z) {
     770             :     int among_var;
     771           0 :     z->ket = z->c;
     772           0 :     if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((10768 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
     773           0 :     among_var = find_among_b(z, a_11, 42);
     774           0 :     if (!among_var) return 0;
     775           0 :     z->bra = z->c;
     776           0 :     {   int ret = r_R1(z);
     777           0 :         if (ret <= 0) return ret;
     778             :     }
     779           0 :     switch (among_var) {
     780           0 :         case 1:
     781           0 :             {   int ret = slice_del(z);
     782           0 :                 if (ret < 0) return ret;
     783             :             }
     784           0 :             break;
     785           0 :         case 2:
     786           0 :             {   int ret = slice_from_s(z, 1, s_12);
     787           0 :                 if (ret < 0) return ret;
     788             :             }
     789           0 :             break;
     790           0 :         case 3:
     791           0 :             {   int ret = slice_from_s(z, 1, s_13);
     792           0 :                 if (ret < 0) return ret;
     793             :             }
     794           0 :             break;
     795             :     }
     796           0 :     return 1;
     797             : }
     798             : 
     799           0 : extern int hungarian_UTF_8_stem(struct SN_env * z) {
     800           0 :     {   int c1 = z->c;
     801           0 :         {   int ret = r_mark_regions(z);
     802           0 :             if (ret < 0) return ret;
     803             :         }
     804           0 :         z->c = c1;
     805             :     }
     806           0 :     z->lb = z->c; z->c = z->l;
     807             : 
     808           0 :     {   int m2 = z->l - z->c; (void)m2;
     809           0 :         {   int ret = r_instrum(z);
     810           0 :             if (ret < 0) return ret;
     811             :         }
     812           0 :         z->c = z->l - m2;
     813             :     }
     814           0 :     {   int m3 = z->l - z->c; (void)m3;
     815           0 :         {   int ret = r_case(z);
     816           0 :             if (ret < 0) return ret;
     817             :         }
     818           0 :         z->c = z->l - m3;
     819             :     }
     820           0 :     {   int m4 = z->l - z->c; (void)m4;
     821           0 :         {   int ret = r_case_special(z);
     822           0 :             if (ret < 0) return ret;
     823             :         }
     824           0 :         z->c = z->l - m4;
     825             :     }
     826           0 :     {   int m5 = z->l - z->c; (void)m5;
     827           0 :         {   int ret = r_case_other(z);
     828           0 :             if (ret < 0) return ret;
     829             :         }
     830           0 :         z->c = z->l - m5;
     831             :     }
     832           0 :     {   int m6 = z->l - z->c; (void)m6;
     833           0 :         {   int ret = r_factive(z);
     834           0 :             if (ret < 0) return ret;
     835             :         }
     836           0 :         z->c = z->l - m6;
     837             :     }
     838           0 :     {   int m7 = z->l - z->c; (void)m7;
     839           0 :         {   int ret = r_owned(z);
     840           0 :             if (ret < 0) return ret;
     841             :         }
     842           0 :         z->c = z->l - m7;
     843             :     }
     844           0 :     {   int m8 = z->l - z->c; (void)m8;
     845           0 :         {   int ret = r_sing_owner(z);
     846           0 :             if (ret < 0) return ret;
     847             :         }
     848           0 :         z->c = z->l - m8;
     849             :     }
     850           0 :     {   int m9 = z->l - z->c; (void)m9;
     851           0 :         {   int ret = r_plur_owner(z);
     852           0 :             if (ret < 0) return ret;
     853             :         }
     854           0 :         z->c = z->l - m9;
     855             :     }
     856           0 :     {   int m10 = z->l - z->c; (void)m10;
     857           0 :         {   int ret = r_plural(z);
     858           0 :             if (ret < 0) return ret;
     859             :         }
     860           0 :         z->c = z->l - m10;
     861             :     }
     862           0 :     z->c = z->lb;
     863           0 :     return 1;
     864             : }
     865             : 
     866           0 : extern struct SN_env * hungarian_UTF_8_create_env(void) { return SN_create_env(0, 1); }
     867             : 
     868           0 : extern void hungarian_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
     869             : 

Generated by: LCOV version 1.14