LCOV - differential code coverage report
Current view: top level - src/backend/snowball/libstemmer - stem_ISO_8859_1_dutch_porter.c (source / functions) Coverage Total Hit UNC
Current: 0e5ff9b9b45a657aea12440478dc002e9b01f138 vs 0123ce131fca454009439dfa3b2266d1d40737d7 Lines: 0.0 % 349 0 349
Current Date: 2026-03-14 14:10:32 -0400 Functions: 0.0 % 12 0 12
Baseline: lcov-20260315-024220-baseline Branches: 0.0 % 251 0 251
Baseline Date: 2026-03-14 15:27:56 +0100 Line coverage date bins:
Legend: Lines:     hit not hit
Branches: + taken - not taken # not executed
(30,360] days: 0.0 % 349 0 349
Function coverage date bins:
(30,360] days: 0.0 % 12 0 12
Branch coverage date bins:
(30,360] days: 0.0 % 251 0 251

 Age         Owner                    Branch data    TLA  Line data    Source code
                                  1                 :                : /* Generated from dutch_porter.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
                                  2                 :                : 
                                  3                 :                : #include "stem_ISO_8859_1_dutch_porter.h"
                                  4                 :                : 
                                  5                 :                : #include <stddef.h>
                                  6                 :                : 
                                  7                 :                : #include "snowball_runtime.h"
                                  8                 :                : 
                                  9                 :                : struct SN_local {
                                 10                 :                :     struct SN_env z;
                                 11                 :                :     int i_p2;
                                 12                 :                :     int i_p1;
                                 13                 :                :     unsigned char b_e_found;
                                 14                 :                : };
                                 15                 :                : 
                                 16                 :                : typedef struct SN_local SN_local;
                                 17                 :                : 
                                 18                 :                : #ifdef __cplusplus
                                 19                 :                : extern "C" {
                                 20                 :                : #endif
                                 21                 :                : extern int dutch_porter_ISO_8859_1_stem(struct SN_env * z);
                                 22                 :                : #ifdef __cplusplus
                                 23                 :                : }
                                 24                 :                : #endif
                                 25                 :                : 
                                 26                 :                : static int r_standard_suffix(struct SN_env * z);
                                 27                 :                : static int r_undouble(struct SN_env * z);
                                 28                 :                : static int r_R2(struct SN_env * z);
                                 29                 :                : static int r_R1(struct SN_env * z);
                                 30                 :                : static int r_mark_regions(struct SN_env * z);
                                 31                 :                : static int r_en_ending(struct SN_env * z);
                                 32                 :                : static int r_e_ending(struct SN_env * z);
                                 33                 :                : static int r_postlude(struct SN_env * z);
                                 34                 :                : static int r_prelude(struct SN_env * z);
                                 35                 :                : 
                                 36                 :                : static const symbol s_0[] = { 'a' };
                                 37                 :                : static const symbol s_1[] = { 'e' };
                                 38                 :                : static const symbol s_2[] = { 'i' };
                                 39                 :                : static const symbol s_3[] = { 'o' };
                                 40                 :                : static const symbol s_4[] = { 'u' };
                                 41                 :                : static const symbol s_5[] = { 'Y' };
                                 42                 :                : static const symbol s_6[] = { 'I' };
                                 43                 :                : static const symbol s_7[] = { 'Y' };
                                 44                 :                : static const symbol s_8[] = { 'y' };
                                 45                 :                : static const symbol s_9[] = { 'i' };
                                 46                 :                : static const symbol s_10[] = { 'g', 'e', 'm' };
                                 47                 :                : static const symbol s_11[] = { 'h', 'e', 'i', 'd' };
                                 48                 :                : static const symbol s_12[] = { 'h', 'e', 'i', 'd' };
                                 49                 :                : static const symbol s_13[] = { 'e', 'n' };
                                 50                 :                : static const symbol s_14[] = { 'i', 'g' };
                                 51                 :                : 
                                 52                 :                : static const symbol s_0_1[1] = { 0xE1 };
                                 53                 :                : static const symbol s_0_2[1] = { 0xE4 };
                                 54                 :                : static const symbol s_0_3[1] = { 0xE9 };
                                 55                 :                : static const symbol s_0_4[1] = { 0xEB };
                                 56                 :                : static const symbol s_0_5[1] = { 0xED };
                                 57                 :                : static const symbol s_0_6[1] = { 0xEF };
                                 58                 :                : static const symbol s_0_7[1] = { 0xF3 };
                                 59                 :                : static const symbol s_0_8[1] = { 0xF6 };
                                 60                 :                : static const symbol s_0_9[1] = { 0xFA };
                                 61                 :                : static const symbol s_0_10[1] = { 0xFC };
                                 62                 :                : static const struct among a_0[11] = {
                                 63                 :                : { 0, 0, 0, 6, 0},
                                 64                 :                : { 1, s_0_1, -1, 1, 0},
                                 65                 :                : { 1, s_0_2, -2, 1, 0},
                                 66                 :                : { 1, s_0_3, -3, 2, 0},
                                 67                 :                : { 1, s_0_4, -4, 2, 0},
                                 68                 :                : { 1, s_0_5, -5, 3, 0},
                                 69                 :                : { 1, s_0_6, -6, 3, 0},
                                 70                 :                : { 1, s_0_7, -7, 4, 0},
                                 71                 :                : { 1, s_0_8, -8, 4, 0},
                                 72                 :                : { 1, s_0_9, -9, 5, 0},
                                 73                 :                : { 1, s_0_10, -10, 5, 0}
                                 74                 :                : };
                                 75                 :                : 
                                 76                 :                : static const symbol s_1_1[1] = { 'I' };
                                 77                 :                : static const symbol s_1_2[1] = { 'Y' };
                                 78                 :                : static const struct among a_1[3] = {
                                 79                 :                : { 0, 0, 0, 3, 0},
                                 80                 :                : { 1, s_1_1, -1, 2, 0},
                                 81                 :                : { 1, s_1_2, -2, 1, 0}
                                 82                 :                : };
                                 83                 :                : 
                                 84                 :                : static const symbol s_2_0[2] = { 'd', 'd' };
                                 85                 :                : static const symbol s_2_1[2] = { 'k', 'k' };
                                 86                 :                : static const symbol s_2_2[2] = { 't', 't' };
                                 87                 :                : static const struct among a_2[3] = {
                                 88                 :                : { 2, s_2_0, 0, -1, 0},
                                 89                 :                : { 2, s_2_1, 0, -1, 0},
                                 90                 :                : { 2, s_2_2, 0, -1, 0}
                                 91                 :                : };
                                 92                 :                : 
                                 93                 :                : static const symbol s_3_0[3] = { 'e', 'n', 'e' };
                                 94                 :                : static const symbol s_3_1[2] = { 's', 'e' };
                                 95                 :                : static const symbol s_3_2[2] = { 'e', 'n' };
                                 96                 :                : static const symbol s_3_3[5] = { 'h', 'e', 'd', 'e', 'n' };
                                 97                 :                : static const symbol s_3_4[1] = { 's' };
                                 98                 :                : static const struct among a_3[5] = {
                                 99                 :                : { 3, s_3_0, 0, 2, 0},
                                100                 :                : { 2, s_3_1, 0, 3, 0},
                                101                 :                : { 2, s_3_2, 0, 2, 0},
                                102                 :                : { 5, s_3_3, -1, 1, 0},
                                103                 :                : { 1, s_3_4, 0, 3, 0}
                                104                 :                : };
                                105                 :                : 
                                106                 :                : static const symbol s_4_0[3] = { 'e', 'n', 'd' };
                                107                 :                : static const symbol s_4_1[2] = { 'i', 'g' };
                                108                 :                : static const symbol s_4_2[3] = { 'i', 'n', 'g' };
                                109                 :                : static const symbol s_4_3[4] = { 'l', 'i', 'j', 'k' };
                                110                 :                : static const symbol s_4_4[4] = { 'b', 'a', 'a', 'r' };
                                111                 :                : static const symbol s_4_5[3] = { 'b', 'a', 'r' };
                                112                 :                : static const struct among a_4[6] = {
                                113                 :                : { 3, s_4_0, 0, 1, 0},
                                114                 :                : { 2, s_4_1, 0, 2, 0},
                                115                 :                : { 3, s_4_2, 0, 1, 0},
                                116                 :                : { 4, s_4_3, 0, 3, 0},
                                117                 :                : { 4, s_4_4, 0, 4, 0},
                                118                 :                : { 3, s_4_5, 0, 5, 0}
                                119                 :                : };
                                120                 :                : 
                                121                 :                : static const symbol s_5_0[2] = { 'a', 'a' };
                                122                 :                : static const symbol s_5_1[2] = { 'e', 'e' };
                                123                 :                : static const symbol s_5_2[2] = { 'o', 'o' };
                                124                 :                : static const symbol s_5_3[2] = { 'u', 'u' };
                                125                 :                : static const struct among a_5[4] = {
                                126                 :                : { 2, s_5_0, 0, -1, 0},
                                127                 :                : { 2, s_5_1, 0, -1, 0},
                                128                 :                : { 2, s_5_2, 0, -1, 0},
                                129                 :                : { 2, s_5_3, 0, -1, 0}
                                130                 :                : };
                                131                 :                : 
                                132                 :                : static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
                                133                 :                : 
                                134                 :                : static const unsigned char g_v_I[] = { 1, 0, 0, 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
                                135                 :                : 
                                136                 :                : static const unsigned char g_v_j[] = { 17, 67, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
                                137                 :                : 
   69 tgl@sss.pgh.pa.us         138                 :UNC           0 : static int r_prelude(struct SN_env * z) {
                                139                 :                :     int among_var;
                                140                 :                :     {
                                141                 :              0 :         int v_1 = z->c;
                                142                 :              0 :         while (1) {
                                143                 :              0 :             int v_2 = z->c;
                                144                 :              0 :             z->bra = z->c;
                                145   [ #  #  #  #  :              0 :             if (z->c >= z->l || z->p[z->c + 0] >> 5 != 7 || !((340306450 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 6; else
                                              #  # ]
                                146                 :              0 :             among_var = find_among(z, a_0, 11, 0);
                                147                 :              0 :             z->ket = z->c;
                                148   [ #  #  #  #  :              0 :             switch (among_var) {
                                           #  #  # ]
                                149                 :              0 :                 case 1:
                                150                 :                :                     {
                                151                 :              0 :                         int ret = slice_from_s(z, 1, s_0);
                                152         [ #  # ]:              0 :                         if (ret < 0) return ret;
                                153                 :                :                     }
                                154                 :              0 :                     break;
                                155                 :              0 :                 case 2:
                                156                 :                :                     {
                                157                 :              0 :                         int ret = slice_from_s(z, 1, s_1);
                                158         [ #  # ]:              0 :                         if (ret < 0) return ret;
                                159                 :                :                     }
                                160                 :              0 :                     break;
                                161                 :              0 :                 case 3:
                                162                 :                :                     {
                                163                 :              0 :                         int ret = slice_from_s(z, 1, s_2);
                                164         [ #  # ]:              0 :                         if (ret < 0) return ret;
                                165                 :                :                     }
                                166                 :              0 :                     break;
                                167                 :              0 :                 case 4:
                                168                 :                :                     {
                                169                 :              0 :                         int ret = slice_from_s(z, 1, s_3);
                                170         [ #  # ]:              0 :                         if (ret < 0) return ret;
                                171                 :                :                     }
                                172                 :              0 :                     break;
                                173                 :              0 :                 case 5:
                                174                 :                :                     {
                                175                 :              0 :                         int ret = slice_from_s(z, 1, s_4);
                                176         [ #  # ]:              0 :                         if (ret < 0) return ret;
                                177                 :                :                     }
                                178                 :              0 :                     break;
                                179                 :              0 :                 case 6:
                                180         [ #  # ]:              0 :                     if (z->c >= z->l) goto lab0;
                                181                 :              0 :                     z->c++;
                                182                 :              0 :                     break;
                                183                 :                :             }
                                184                 :              0 :             continue;
                                185                 :              0 :         lab0:
                                186                 :              0 :             z->c = v_2;
                                187                 :              0 :             break;
                                188                 :                :         }
                                189                 :              0 :         z->c = v_1;
                                190                 :                :     }
                                191                 :                :     {
                                192                 :              0 :         int v_3 = z->c;
                                193                 :              0 :         z->bra = z->c;
                                194   [ #  #  #  # ]:              0 :         if (z->c == z->l || z->p[z->c] != 'y') { z->c = v_3; goto lab1; }
                                195                 :              0 :         z->c++;
                                196                 :              0 :         z->ket = z->c;
                                197                 :                :         {
                                198                 :              0 :             int ret = slice_from_s(z, 1, s_5);
                                199         [ #  # ]:              0 :             if (ret < 0) return ret;
                                200                 :                :         }
                                201                 :              0 :     lab1:
                                202                 :                :         ;
                                203                 :                :     }
                                204                 :              0 :     while (1) {
                                205                 :              0 :         int v_4 = z->c;
                                206                 :                :         {
                                207                 :              0 :             int ret = out_grouping(z, g_v, 97, 232, 1);
                                208         [ #  # ]:              0 :             if (ret < 0) goto lab2;
                                209                 :              0 :             z->c += ret;
                                210                 :                :         }
                                211                 :                :         {
                                212                 :              0 :             int v_5 = z->c;
                                213                 :              0 :             z->bra = z->c;
                                214                 :                :             do {
                                215                 :              0 :                 int v_6 = z->c;
                                216   [ #  #  #  # ]:              0 :                 if (z->c == z->l || z->p[z->c] != 'i') goto lab4;
                                217                 :              0 :                 z->c++;
                                218                 :              0 :                 z->ket = z->c;
                                219                 :                :                 {
                                220                 :              0 :                     int v_7 = z->c;
                                221         [ #  # ]:              0 :                     if (in_grouping(z, g_v, 97, 232, 0)) goto lab5;
                                222                 :                :                     {
                                223                 :              0 :                         int ret = slice_from_s(z, 1, s_6);
                                224         [ #  # ]:              0 :                         if (ret < 0) return ret;
                                225                 :                :                     }
                                226                 :              0 :                 lab5:
                                227                 :              0 :                     z->c = v_7;
                                228                 :                :                 }
                                229                 :              0 :                 break;
                                230                 :              0 :             lab4:
                                231                 :              0 :                 z->c = v_6;
                                232   [ #  #  #  # ]:              0 :                 if (z->c == z->l || z->p[z->c] != 'y') { z->c = v_5; goto lab3; }
                                233                 :              0 :                 z->c++;
                                234                 :              0 :                 z->ket = z->c;
                                235                 :                :                 {
                                236                 :              0 :                     int ret = slice_from_s(z, 1, s_7);
                                237         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                238                 :                :                 }
                                239                 :                :             } while (0);
                                240                 :              0 :         lab3:
                                241                 :                :             ;
                                242                 :                :         }
                                243                 :              0 :         continue;
                                244                 :              0 :     lab2:
                                245                 :              0 :         z->c = v_4;
                                246                 :              0 :         break;
                                247                 :                :     }
                                248                 :              0 :     return 1;
                                249                 :                : }
                                250                 :                : 
                                251                 :              0 : static int r_mark_regions(struct SN_env * z) {
                                252                 :                :     int i_x;
                                253                 :              0 :     ((SN_local *)z)->i_p1 = z->l;
                                254                 :              0 :     ((SN_local *)z)->i_p2 = z->l;
                                255                 :                :     {
                                256                 :              0 :         int v_1 = z->c;
                                257         [ #  # ]:              0 :         if (z->c + 3 > z->l) return 0;
                                258                 :              0 :         z->c += 3;
                                259                 :              0 :         i_x = z->c;
                                260                 :              0 :         z->c = v_1;
                                261                 :                :     }
                                262                 :                :     {
                                263                 :              0 :         int ret = out_grouping(z, g_v, 97, 232, 1);
                                264         [ #  # ]:              0 :         if (ret < 0) return 0;
                                265                 :              0 :         z->c += ret;
                                266                 :                :     }
                                267                 :                :     {
                                268                 :              0 :         int ret = in_grouping(z, g_v, 97, 232, 1);
                                269         [ #  # ]:              0 :         if (ret < 0) return 0;
                                270                 :              0 :         z->c += ret;
                                271                 :                :     }
                                272                 :              0 :     ((SN_local *)z)->i_p1 = z->c;
                                273         [ #  # ]:              0 :     if (((SN_local *)z)->i_p1 >= i_x) goto lab0;
                                274                 :              0 :     ((SN_local *)z)->i_p1 = i_x;
                                275                 :              0 : lab0:
                                276                 :                :     {
                                277                 :              0 :         int ret = out_grouping(z, g_v, 97, 232, 1);
                                278         [ #  # ]:              0 :         if (ret < 0) return 0;
                                279                 :              0 :         z->c += ret;
                                280                 :                :     }
                                281                 :                :     {
                                282                 :              0 :         int ret = in_grouping(z, g_v, 97, 232, 1);
                                283         [ #  # ]:              0 :         if (ret < 0) return 0;
                                284                 :              0 :         z->c += ret;
                                285                 :                :     }
                                286                 :              0 :     ((SN_local *)z)->i_p2 = z->c;
                                287                 :              0 :     return 1;
                                288                 :                : }
                                289                 :                : 
                                290                 :              0 : static int r_postlude(struct SN_env * z) {
                                291                 :                :     int among_var;
                                292                 :              0 :     while (1) {
                                293                 :              0 :         int v_1 = z->c;
                                294                 :              0 :         z->bra = z->c;
                                295   [ #  #  #  #  :              0 :         if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 89)) among_var = 3; else
                                              #  # ]
                                296                 :              0 :         among_var = find_among(z, a_1, 3, 0);
                                297                 :              0 :         z->ket = z->c;
                                298   [ #  #  #  # ]:              0 :         switch (among_var) {
                                299                 :              0 :             case 1:
                                300                 :                :                 {
                                301                 :              0 :                     int ret = slice_from_s(z, 1, s_8);
                                302         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                303                 :                :                 }
                                304                 :              0 :                 break;
                                305                 :              0 :             case 2:
                                306                 :                :                 {
                                307                 :              0 :                     int ret = slice_from_s(z, 1, s_9);
                                308         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                309                 :                :                 }
                                310                 :              0 :                 break;
                                311                 :              0 :             case 3:
                                312         [ #  # ]:              0 :                 if (z->c >= z->l) goto lab0;
                                313                 :              0 :                 z->c++;
                                314                 :              0 :                 break;
                                315                 :                :         }
                                316                 :              0 :         continue;
                                317                 :              0 :     lab0:
                                318                 :              0 :         z->c = v_1;
                                319                 :              0 :         break;
                                320                 :                :     }
                                321                 :              0 :     return 1;
                                322                 :                : }
                                323                 :                : 
                                324                 :              0 : static int r_R1(struct SN_env * z) {
                                325                 :              0 :     return ((SN_local *)z)->i_p1 <= z->c;
                                326                 :                : }
                                327                 :                : 
                                328                 :              0 : static int r_R2(struct SN_env * z) {
                                329                 :              0 :     return ((SN_local *)z)->i_p2 <= z->c;
                                330                 :                : }
                                331                 :                : 
                                332                 :              0 : static int r_undouble(struct SN_env * z) {
                                333                 :                :     {
                                334                 :              0 :         int v_1 = z->l - z->c;
                                335   [ #  #  #  #  :              0 :         if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1050640 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
                                              #  # ]
                                336         [ #  # ]:              0 :         if (!find_among_b(z, a_2, 3, 0)) return 0;
                                337                 :              0 :         z->c = z->l - v_1;
                                338                 :                :     }
                                339                 :              0 :     z->ket = z->c;
                                340         [ #  # ]:              0 :     if (z->c <= z->lb) return 0;
                                341                 :              0 :     z->c--;
                                342                 :              0 :     z->bra = z->c;
                                343                 :                :     {
                                344                 :              0 :         int ret = slice_del(z);
                                345         [ #  # ]:              0 :         if (ret < 0) return ret;
                                346                 :                :     }
                                347                 :              0 :     return 1;
                                348                 :                : }
                                349                 :                : 
                                350                 :              0 : static int r_e_ending(struct SN_env * z) {
                                351                 :              0 :     ((SN_local *)z)->b_e_found = 0;
                                352                 :              0 :     z->ket = z->c;
                                353   [ #  #  #  # ]:              0 :     if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
                                354                 :              0 :     z->c--;
                                355                 :              0 :     z->bra = z->c;
                                356                 :                :     {
                                357                 :              0 :         int ret = r_R1(z);
                                358         [ #  # ]:              0 :         if (ret <= 0) return ret;
                                359                 :                :     }
                                360                 :                :     {
                                361                 :              0 :         int v_1 = z->l - z->c;
                                362         [ #  # ]:              0 :         if (out_grouping_b(z, g_v, 97, 232, 0)) return 0;
                                363                 :              0 :         z->c = z->l - v_1;
                                364                 :                :     }
                                365                 :                :     {
                                366                 :              0 :         int ret = slice_del(z);
                                367         [ #  # ]:              0 :         if (ret < 0) return ret;
                                368                 :                :     }
                                369                 :              0 :     ((SN_local *)z)->b_e_found = 1;
                                370                 :              0 :     return r_undouble(z);
                                371                 :                : }
                                372                 :                : 
                                373                 :              0 : static int r_en_ending(struct SN_env * z) {
                                374                 :                :     {
                                375                 :              0 :         int ret = r_R1(z);
                                376         [ #  # ]:              0 :         if (ret <= 0) return ret;
                                377                 :                :     }
                                378                 :                :     {
                                379                 :              0 :         int v_1 = z->l - z->c;
                                380         [ #  # ]:              0 :         if (out_grouping_b(z, g_v, 97, 232, 0)) return 0;
                                381                 :              0 :         z->c = z->l - v_1;
                                382                 :                :         {
                                383                 :              0 :             int v_2 = z->l - z->c;
                                384         [ #  # ]:              0 :             if (!(eq_s_b(z, 3, s_10))) goto lab0;
                                385                 :              0 :             return 0;
                                386                 :              0 :         lab0:
                                387                 :              0 :             z->c = z->l - v_2;
                                388                 :                :         }
                                389                 :                :     }
                                390                 :                :     {
                                391                 :              0 :         int ret = slice_del(z);
                                392         [ #  # ]:              0 :         if (ret < 0) return ret;
                                393                 :                :     }
                                394                 :              0 :     return r_undouble(z);
                                395                 :                : }
                                396                 :                : 
                                397                 :              0 : static int r_standard_suffix(struct SN_env * z) {
                                398                 :                :     int among_var;
                                399                 :                :     {
                                400                 :              0 :         int v_1 = z->l - z->c;
                                401                 :              0 :         z->ket = z->c;
                                402   [ #  #  #  #  :              0 :         if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((540704 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
                                              #  # ]
                                403                 :              0 :         among_var = find_among_b(z, a_3, 5, 0);
                                404         [ #  # ]:              0 :         if (!among_var) goto lab0;
                                405                 :              0 :         z->bra = z->c;
                                406   [ #  #  #  # ]:              0 :         switch (among_var) {
                                407                 :              0 :             case 1:
                                408                 :                :                 {
                                409                 :              0 :                     int ret = r_R1(z);
                                410         [ #  # ]:              0 :                     if (ret == 0) goto lab0;
                                411         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                412                 :                :                 }
                                413                 :                :                 {
                                414                 :              0 :                     int ret = slice_from_s(z, 4, s_11);
                                415         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                416                 :                :                 }
                                417                 :              0 :                 break;
                                418                 :              0 :             case 2:
                                419                 :                :                 {
                                420                 :              0 :                     int ret = r_en_ending(z);
                                421         [ #  # ]:              0 :                     if (ret == 0) goto lab0;
                                422         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                423                 :                :                 }
                                424                 :              0 :                 break;
                                425                 :              0 :             case 3:
                                426                 :                :                 {
                                427                 :              0 :                     int ret = r_R1(z);
                                428         [ #  # ]:              0 :                     if (ret == 0) goto lab0;
                                429         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                430                 :                :                 }
                                431         [ #  # ]:              0 :                 if (out_grouping_b(z, g_v_j, 97, 232, 0)) goto lab0;
                                432                 :                :                 {
                                433                 :              0 :                     int ret = slice_del(z);
                                434         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                435                 :                :                 }
                                436                 :              0 :                 break;
                                437                 :                :         }
                                438                 :              0 :     lab0:
                                439                 :              0 :         z->c = z->l - v_1;
                                440                 :                :     }
                                441                 :                :     {
                                442                 :              0 :         int v_2 = z->l - z->c;
                                443                 :                :         {
                                444                 :              0 :             int ret = r_e_ending(z);
                                445         [ #  # ]:              0 :             if (ret < 0) return ret;
                                446                 :                :         }
                                447                 :              0 :         z->c = z->l - v_2;
                                448                 :                :     }
                                449                 :                :     {
                                450                 :              0 :         int v_3 = z->l - z->c;
                                451                 :              0 :         z->ket = z->c;
                                452         [ #  # ]:              0 :         if (!(eq_s_b(z, 4, s_12))) goto lab1;
                                453                 :              0 :         z->bra = z->c;
                                454                 :                :         {
                                455                 :              0 :             int ret = r_R2(z);
                                456         [ #  # ]:              0 :             if (ret == 0) goto lab1;
                                457         [ #  # ]:              0 :             if (ret < 0) return ret;
                                458                 :                :         }
                                459                 :                :         {
                                460                 :              0 :             int v_4 = z->l - z->c;
                                461   [ #  #  #  # ]:              0 :             if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab2;
                                462                 :              0 :             z->c--;
                                463                 :              0 :             goto lab1;
                                464                 :              0 :         lab2:
                                465                 :              0 :             z->c = z->l - v_4;
                                466                 :                :         }
                                467                 :                :         {
                                468                 :              0 :             int ret = slice_del(z);
                                469         [ #  # ]:              0 :             if (ret < 0) return ret;
                                470                 :                :         }
                                471                 :              0 :         z->ket = z->c;
                                472         [ #  # ]:              0 :         if (!(eq_s_b(z, 2, s_13))) goto lab1;
                                473                 :              0 :         z->bra = z->c;
                                474                 :                :         {
                                475                 :              0 :             int ret = r_en_ending(z);
                                476         [ #  # ]:              0 :             if (ret == 0) goto lab1;
                                477         [ #  # ]:              0 :             if (ret < 0) return ret;
                                478                 :                :         }
                                479                 :              0 :     lab1:
                                480                 :              0 :         z->c = z->l - v_3;
                                481                 :                :     }
                                482                 :                :     {
                                483                 :              0 :         int v_5 = z->l - z->c;
                                484                 :              0 :         z->ket = z->c;
                                485   [ #  #  #  #  :              0 :         if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3;
                                              #  # ]
                                486                 :              0 :         among_var = find_among_b(z, a_4, 6, 0);
                                487         [ #  # ]:              0 :         if (!among_var) goto lab3;
                                488                 :              0 :         z->bra = z->c;
                                489   [ #  #  #  #  :              0 :         switch (among_var) {
                                              #  # ]
                                490                 :              0 :             case 1:
                                491                 :                :                 {
                                492                 :              0 :                     int ret = r_R2(z);
                                493         [ #  # ]:              0 :                     if (ret == 0) goto lab3;
                                494         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                495                 :                :                 }
                                496                 :                :                 {
                                497                 :              0 :                     int ret = slice_del(z);
                                498         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                499                 :                :                 }
                                500                 :                :                 do {
                                501                 :              0 :                     int v_6 = z->l - z->c;
                                502                 :              0 :                     z->ket = z->c;
                                503         [ #  # ]:              0 :                     if (!(eq_s_b(z, 2, s_14))) goto lab4;
                                504                 :              0 :                     z->bra = z->c;
                                505                 :                :                     {
                                506                 :              0 :                         int ret = r_R2(z);
                                507         [ #  # ]:              0 :                         if (ret == 0) goto lab4;
                                508         [ #  # ]:              0 :                         if (ret < 0) return ret;
                                509                 :                :                     }
                                510                 :                :                     {
                                511                 :              0 :                         int v_7 = z->l - z->c;
                                512   [ #  #  #  # ]:              0 :                         if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab5;
                                513                 :              0 :                         z->c--;
                                514                 :              0 :                         goto lab4;
                                515                 :              0 :                     lab5:
                                516                 :              0 :                         z->c = z->l - v_7;
                                517                 :                :                     }
                                518                 :                :                     {
                                519                 :              0 :                         int ret = slice_del(z);
                                520         [ #  # ]:              0 :                         if (ret < 0) return ret;
                                521                 :                :                     }
                                522                 :              0 :                     break;
                                523                 :              0 :                 lab4:
                                524                 :              0 :                     z->c = z->l - v_6;
                                525                 :                :                     {
                                526                 :              0 :                         int ret = r_undouble(z);
                                527         [ #  # ]:              0 :                         if (ret == 0) goto lab3;
                                528         [ #  # ]:              0 :                         if (ret < 0) return ret;
                                529                 :                :                     }
                                530                 :                :                 } while (0);
                                531                 :              0 :                 break;
                                532                 :              0 :             case 2:
                                533                 :                :                 {
                                534                 :              0 :                     int ret = r_R2(z);
                                535         [ #  # ]:              0 :                     if (ret == 0) goto lab3;
                                536         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                537                 :                :                 }
                                538                 :                :                 {
                                539                 :              0 :                     int v_8 = z->l - z->c;
                                540   [ #  #  #  # ]:              0 :                     if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6;
                                541                 :              0 :                     z->c--;
                                542                 :              0 :                     goto lab3;
                                543                 :              0 :                 lab6:
                                544                 :              0 :                     z->c = z->l - v_8;
                                545                 :                :                 }
                                546                 :                :                 {
                                547                 :              0 :                     int ret = slice_del(z);
                                548         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                549                 :                :                 }
                                550                 :              0 :                 break;
                                551                 :              0 :             case 3:
                                552                 :                :                 {
                                553                 :              0 :                     int ret = r_R2(z);
                                554         [ #  # ]:              0 :                     if (ret == 0) goto lab3;
                                555         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                556                 :                :                 }
                                557                 :                :                 {
                                558                 :              0 :                     int ret = slice_del(z);
                                559         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                560                 :                :                 }
                                561                 :                :                 {
                                562                 :              0 :                     int ret = r_e_ending(z);
                                563         [ #  # ]:              0 :                     if (ret == 0) goto lab3;
                                564         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                565                 :                :                 }
                                566                 :              0 :                 break;
                                567                 :              0 :             case 4:
                                568                 :                :                 {
                                569                 :              0 :                     int ret = r_R2(z);
                                570         [ #  # ]:              0 :                     if (ret == 0) goto lab3;
                                571         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                572                 :                :                 }
                                573                 :                :                 {
                                574                 :              0 :                     int ret = slice_del(z);
                                575         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                576                 :                :                 }
                                577                 :              0 :                 break;
                                578                 :              0 :             case 5:
                                579                 :                :                 {
                                580                 :              0 :                     int ret = r_R2(z);
                                581         [ #  # ]:              0 :                     if (ret == 0) goto lab3;
                                582         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                583                 :                :                 }
                                584         [ #  # ]:              0 :                 if (!((SN_local *)z)->b_e_found) goto lab3;
                                585                 :                :                 {
                                586                 :              0 :                     int ret = slice_del(z);
                                587         [ #  # ]:              0 :                     if (ret < 0) return ret;
                                588                 :                :                 }
                                589                 :              0 :                 break;
                                590                 :                :         }
                                591                 :              0 :     lab3:
                                592                 :              0 :         z->c = z->l - v_5;
                                593                 :                :     }
                                594                 :                :     {
                                595                 :              0 :         int v_9 = z->l - z->c;
                                596         [ #  # ]:              0 :         if (out_grouping_b(z, g_v_I, 73, 232, 0)) goto lab7;
                                597                 :                :         {
                                598                 :              0 :             int v_10 = z->l - z->c;
                                599   [ #  #  #  #  :              0 :             if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab7;
                                              #  # ]
                                600         [ #  # ]:              0 :             if (!find_among_b(z, a_5, 4, 0)) goto lab7;
                                601         [ #  # ]:              0 :             if (out_grouping_b(z, g_v, 97, 232, 0)) goto lab7;
                                602                 :              0 :             z->c = z->l - v_10;
                                603                 :                :         }
                                604                 :              0 :         z->ket = z->c;
                                605         [ #  # ]:              0 :         if (z->c <= z->lb) goto lab7;
                                606                 :              0 :         z->c--;
                                607                 :              0 :         z->bra = z->c;
                                608                 :                :         {
                                609                 :              0 :             int ret = slice_del(z);
                                610         [ #  # ]:              0 :             if (ret < 0) return ret;
                                611                 :                :         }
                                612                 :              0 :     lab7:
                                613                 :              0 :         z->c = z->l - v_9;
                                614                 :                :     }
                                615                 :              0 :     return 1;
                                616                 :                : }
                                617                 :                : 
                                618                 :              0 : extern int dutch_porter_ISO_8859_1_stem(struct SN_env * z) {
                                619                 :                :     {
                                620                 :              0 :         int v_1 = z->c;
                                621                 :                :         {
                                622                 :              0 :             int ret = r_prelude(z);
                                623         [ #  # ]:              0 :             if (ret < 0) return ret;
                                624                 :                :         }
                                625                 :              0 :         z->c = v_1;
                                626                 :                :     }
                                627                 :                :     {
                                628                 :              0 :         int v_2 = z->c;
                                629                 :                :         {
                                630                 :              0 :             int ret = r_mark_regions(z);
                                631         [ #  # ]:              0 :             if (ret < 0) return ret;
                                632                 :                :         }
                                633                 :              0 :         z->c = v_2;
                                634                 :                :     }
                                635                 :              0 :     z->lb = z->c; z->c = z->l;
                                636                 :                :     {
                                637                 :              0 :         int ret = r_standard_suffix(z);
                                638         [ #  # ]:              0 :         if (ret < 0) return ret;
                                639                 :                :     }
                                640                 :              0 :     z->c = z->lb;
                                641                 :                :     {
                                642                 :              0 :         int v_3 = z->c;
                                643                 :                :         {
                                644                 :              0 :             int ret = r_postlude(z);
                                645         [ #  # ]:              0 :             if (ret < 0) return ret;
                                646                 :                :         }
                                647                 :              0 :         z->c = v_3;
                                648                 :                :     }
                                649                 :              0 :     return 1;
                                650                 :                : }
                                651                 :                : 
                                652                 :              0 : extern struct SN_env * dutch_porter_ISO_8859_1_create_env(void) {
                                653                 :              0 :     struct SN_env * z = SN_new_env(sizeof(SN_local));
                                654         [ #  # ]:              0 :     if (z) {
                                655                 :              0 :         ((SN_local *)z)->i_p2 = 0;
                                656                 :              0 :         ((SN_local *)z)->i_p1 = 0;
                                657                 :              0 :         ((SN_local *)z)->b_e_found = 0;
                                658                 :                :     }
                                659                 :              0 :     return z;
                                660                 :                : }
                                661                 :                : 
                                662                 :              0 : extern void dutch_porter_ISO_8859_1_close_env(struct SN_env * z) {
                                663                 :              0 :     SN_delete_env(z);
                                664                 :              0 : }
                                665                 :                : 
        

Generated by: LCOV version 2.4-beta