static int r_prelude(struct SN_env * z) { int among_var; while(1) { /* repeat, line 36 */ int c = z->c; z->bra = z->c; /* [, line 37 */ among_var = find_among(z, a_0, 3); /* substring, line 37 */ if (!(among_var)) goto lab0; z->ket = z->c; /* ], line 37 */ switch(among_var) { case 0: goto lab0; case 1: { int ret; ret = slice_from_s(z, 2, s_0); /* <-, line 38 */ if (ret < 0) return ret; } break; case 2: { int ret; ret = slice_from_s(z, 2, s_1); /* <-, line 39 */ if (ret < 0) return ret; } break; case 3: { int c = skip_utf8(z->p, z->c, 0, z->l, 1); if (c < 0) goto lab0; z->c = c; /* next, line 40 */ } break; } continue; lab0: z->c = c; break; } return 1; }
static int r_main_suffix(struct SN_env * z) { int among_var; { int m3; /* setlimit, line 38 */ int m = z->l - z->c; (void) m; if (z->c < z->I[0]) return 0; z->c = z->I[0]; /* tomark, line 38 */ m3 = z->lb; z->lb = z->c; z->c = z->l - m; z->ket = z->c; /* [, line 38 */ among_var = find_among_b(z, a_0, 29); /* substring, line 38 */ if (!(among_var)) { z->lb = m3; return 0; } z->bra = z->c; /* ], line 38 */ z->lb = m3; } switch(among_var) { case 0: return 0; case 1: { int ret; ret = slice_del(z); /* delete, line 44 */ if (ret < 0) return ret; } break; case 2: { int m = z->l - z->c; (void) m; /* or, line 46 */ if (!(in_grouping_b_U(z, g_s_ending, 98, 122))) goto lab1; goto lab0; lab1: z->c = z->l - m; if (!(eq_s_b(z, 1, s_0))) return 0; if (!(out_grouping_b_U(z, g_v, 97, 248))) return 0; } lab0: { int ret; ret = slice_del(z); /* delete, line 46 */ if (ret < 0) return ret; } break; case 3: { int ret; ret = slice_from_s(z, 2, s_1); /* <-, line 48 */ if (ret < 0) return ret; } break; } return 1; }
static int r_attached_pronoun(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 87 */ if (!(find_among_b(z, a_2, 37))) return 0; /* substring, line 87 */ z->bra = z->c; /* ], line 87 */ among_var = find_among_b(z, a_3, 5); /* among, line 97 */ if (!(among_var)) return 0; if (!r_RV(z)) return 0; /* call RV, line 97 */ switch(among_var) { case 0: return 0; case 1: slice_del(z); /* delete, line 98 */ break; case 2: slice_from_s(z, 1, s_12); /* <-, line 99 */ break; } return 1; }
static int r_residual_form(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 190 */ among_var = find_among_b(z, a_8, 4); /* substring, line 190 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 190 */ switch(among_var) { case 0: return 0; case 1: if (!r_RV(z)) return 0; /* call RV, line 192 */ slice_del(z); /* delete, line 192 */ z->ket = z->c; /* [, line 192 */ { int m = z->l - z->c; /* or, line 192 */ if (!(eq_s_b(z, 1, s_11))) goto lab1; z->bra = z->c; /* ], line 192 */ { int m_test = z->l - z->c; /* test, line 192 */ if (!(eq_s_b(z, 1, s_12))) goto lab1; z->c = z->l - m_test; } goto lab0; lab1: z->c = z->l - m; if (!(eq_s_b(z, 1, s_13))) return 0; z->bra = z->c; /* ], line 193 */ { int m_test = z->l - z->c; /* test, line 193 */ if (!(eq_s_b(z, 1, s_14))) return 0; z->c = z->l - m_test; } } lab0: if (!r_RV(z)) return 0; /* call RV, line 193 */ slice_del(z); /* delete, line 193 */ break; case 2: slice_from_s(z, 1, s_15); /* <-, line 194 */ break; } return 1; }
static int r_un_accent(struct SN_env * z) { { int i = 1; while(1) { /* atleast, line 207 */ if (!(out_grouping_b(z, g_v, 97, 251))) goto lab0; i--; continue; lab0: break; } if (i > 0) return 0; } z->ket = z->c; /* [, line 208 */ { int m = z->l - z->c; /* or, line 208 */ if (!(eq_s_b(z, 1, s_38))) goto lab2; goto lab1; lab2: z->c = z->l - m; if (!(eq_s_b(z, 1, s_39))) return 0; } lab1: z->bra = z->c; /* ], line 208 */ slice_from_s(z, 1, s_40); /* <-, line 208 */ return 1; }
static int r_Step_1c(struct SN_env * z) { z->ket = z->c; /* [, line 93 */ { int m = z->l - z->c; (void) m; /* or, line 93 */ if (!(eq_s_b(z, 1, s_11))) goto lab1; goto lab0; lab1: z->c = z->l - m; if (!(eq_s_b(z, 1, s_12))) return 0; } lab0: z->bra = z->c; /* ], line 93 */ if (!(out_grouping_b(z, g_v, 97, 121))) return 0; { int m = z->l - z->c; (void) m; /* not, line 94 */ if (z->c > z->lb) goto lab2; /* atlimit, line 94 */ return 0; lab2: z->c = z->l - m; } { int ret; ret = slice_from_s(z, 1, s_13); /* <-, line 95 */ if (ret < 0) return ret; } return 1; }
static int r_prefixes(struct SN_env * z) { int among_var; z->bra = z->c; /* [, line 24 */ among_var = find_among(z, a_1, 6); /* substring, line 24 */ if (!(among_var)) return 0; z->ket = z->c; /* ], line 24 */ switch(among_var) { case 0: return 0; case 1: { int ret = slice_from_s(z, 3, s_9); /* <-, line 25 */ if (ret < 0) return ret; } break; case 2: { int ret = slice_from_s(z, 2, s_10); /* <-, line 26 */ if (ret < 0) return ret; } break; case 3: { int ret = slice_from_s(z, 3, s_11); /* <-, line 27 */ if (ret < 0) return ret; } break; case 4: { int ret = slice_from_s(z, 5, s_12); /* <-, line 28 */ if (ret < 0) return ret; } break; case 5: { int ret = slice_from_s(z, 4, s_13); /* <-, line 29 */ if (ret < 0) return ret; } break; case 6: { int ret = slice_from_s(z, 3, s_14); /* <-, line 30 */ if (ret < 0) return ret; } break; } return 1; }
static int r_possessive(struct SN_env * z) { int among_var; { int mlimit; /* setlimit, line 69 */ int m1 = z->l - z->c; (void)m1; if (z->c < z->I[0]) return 0; z->c = z->I[0]; /* tomark, line 69 */ mlimit = z->lb; z->lb = z->c; z->c = z->l - m1; z->ket = z->c; /* [, line 69 */ among_var = find_among_b(z, a_4, 9); /* substring, line 69 */ if (!(among_var)) { z->lb = mlimit; return 0; } z->bra = z->c; /* ], line 69 */ z->lb = mlimit; } switch(among_var) { case 0: return 0; case 1: { int m2 = z->l - z->c; (void)m2; /* not, line 72 */ if (!(eq_s_b(z, 1, s_0))) goto lab0; return 0; lab0: z->c = z->l - m2; } { int ret = slice_del(z); /* delete, line 72 */ if (ret < 0) return ret; } break; case 2: { int ret = slice_del(z); /* delete, line 74 */ if (ret < 0) return ret; } z->ket = z->c; /* [, line 74 */ if (!(eq_s_b(z, 3, s_1))) return 0; z->bra = z->c; /* ], line 74 */ { int ret = slice_from_s(z, 3, s_2); /* <-, line 74 */ if (ret < 0) return ret; } break; case 3: { int ret = slice_del(z); /* delete, line 78 */ if (ret < 0) return ret; } break; case 4: if (z->c - 1 <= z->lb || z->p[z->c - 1] != 97) return 0; if (!(find_among_b(z, a_1, 6))) return 0; /* among, line 81 */ { int ret = slice_del(z); /* delete, line 81 */ if (ret < 0) return ret; } break; case 5: if (z->c - 2 <= z->lb || z->p[z->c - 1] != 164) return 0; if (!(find_among_b(z, a_2, 6))) return 0; /* among, line 83 */ { int ret = slice_del(z); /* delete, line 84 */ if (ret < 0) return ret; } break; case 6: if (z->c - 2 <= z->lb || z->p[z->c - 1] != 101) return 0; if (!(find_among_b(z, a_3, 2))) return 0; /* among, line 86 */ { int ret = slice_del(z); /* delete, line 86 */ if (ret < 0) return ret; } break; } return 1; }
static int r_owned(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 154 */ among_var = find_among_b(z, a_9, 12); /* substring, line 154 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 154 */ { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 154 */ if (ret < 0) return ret; } switch(among_var) { case 0: return 0; case 1: { int ret; ret = slice_del(z); /* delete, line 155 */ if (ret < 0) return ret; } break; case 2: { int ret; ret = slice_from_s(z, 1, s_9); /* <-, line 156 */ if (ret < 0) return ret; } break; case 3: { int ret; ret = slice_from_s(z, 1, s_10); /* <-, line 157 */ if (ret < 0) return ret; } break; case 4: { int ret; ret = slice_del(z); /* delete, line 158 */ if (ret < 0) return ret; } break; case 5: { int ret; ret = slice_from_s(z, 1, s_11); /* <-, line 159 */ if (ret < 0) return ret; } break; case 6: { int ret; ret = slice_from_s(z, 1, s_12); /* <-, line 160 */ if (ret < 0) return ret; } break; case 7: { int ret; ret = slice_del(z); /* delete, line 161 */ if (ret < 0) return ret; } break; case 8: { int ret; ret = slice_from_s(z, 1, s_13); /* <-, line 162 */ if (ret < 0) return ret; } break; case 9: { int ret; ret = slice_del(z); /* delete, line 163 */ if (ret < 0) return ret; } break; } return 1; }
static int r_prelude(struct SN_env * z) { while(1) { /* repeat, line 38 */ int c = z->c; while(1) { /* goto, line 38 */ int c = z->c; { int c = z->c; /* or, line 44 */ if (!(in_grouping(z, g_v, 97, 251))) goto lab3; z->bra = z->c; /* [, line 40 */ { int c = z->c; /* or, line 40 */ if (!(eq_s(z, 1, s_0))) goto lab5; z->ket = z->c; /* ], line 40 */ if (!(in_grouping(z, g_v, 97, 251))) goto lab5; { int ret; ret = slice_from_s(z, 1, s_1); /* <-, line 40 */ if (ret < 0) return ret; } goto lab4; lab5: z->c = c; if (!(eq_s(z, 1, s_2))) goto lab6; z->ket = z->c; /* ], line 41 */ if (!(in_grouping(z, g_v, 97, 251))) goto lab6; { int ret; ret = slice_from_s(z, 1, s_3); /* <-, line 41 */ if (ret < 0) return ret; } goto lab4; lab6: z->c = c; if (!(eq_s(z, 1, s_4))) goto lab3; z->ket = z->c; /* ], line 42 */ { int ret; ret = slice_from_s(z, 1, s_5); /* <-, line 42 */ if (ret < 0) return ret; } } lab4: goto lab2; lab3: z->c = c; z->bra = z->c; /* [, line 45 */ if (!(eq_s(z, 1, s_6))) goto lab7; z->ket = z->c; /* ], line 45 */ if (!(in_grouping(z, g_v, 97, 251))) goto lab7; { int ret; ret = slice_from_s(z, 1, s_7); /* <-, line 45 */ if (ret < 0) return ret; } goto lab2; lab7: z->c = c; if (!(eq_s(z, 1, s_8))) goto lab1; z->bra = z->c; /* [, line 47 */ if (!(eq_s(z, 1, s_9))) goto lab1; z->ket = z->c; /* ], line 47 */ { int ret; ret = slice_from_s(z, 1, s_10); /* <-, line 47 */ if (ret < 0) return ret; } } lab2: z->c = c; break; lab1: z->c = c; if (z->c >= z->l) goto lab0; z->c++; /* goto, line 38 */ } continue; lab0: z->c = c; break; } return 1; }
static int r_sing_owner(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 168 */ among_var = find_among_b(z, a_10, 31); /* substring, line 168 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 168 */ { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 168 */ if (ret < 0) return ret; } switch(among_var) { case 0: return 0; case 1: { int ret; ret = slice_del(z); /* delete, line 169 */ if (ret < 0) return ret; } break; case 2: { int ret; ret = slice_from_s(z, 1, s_14); /* <-, line 170 */ if (ret < 0) return ret; } break; case 3: { int ret; ret = slice_from_s(z, 1, s_15); /* <-, line 171 */ if (ret < 0) return ret; } break; case 4: { int ret; ret = slice_del(z); /* delete, line 172 */ if (ret < 0) return ret; } break; case 5: { int ret; ret = slice_from_s(z, 1, s_16); /* <-, line 173 */ if (ret < 0) return ret; } break; case 6: { int ret; ret = slice_from_s(z, 1, s_17); /* <-, line 174 */ if (ret < 0) return ret; } break; case 7: { int ret; ret = slice_del(z); /* delete, line 175 */ if (ret < 0) return ret; } break; case 8: { int ret; ret = slice_del(z); /* delete, line 176 */ if (ret < 0) return ret; } break; case 9: { int ret; ret = slice_del(z); /* delete, line 177 */ if (ret < 0) return ret; } break; case 10: { int ret; ret = slice_from_s(z, 1, s_18); /* <-, line 178 */ if (ret < 0) return ret; } break; case 11: { int ret; ret = slice_from_s(z, 1, s_19); /* <-, line 179 */ if (ret < 0) return ret; } break; case 12: { int ret; ret = slice_del(z); /* delete, line 180 */ if (ret < 0) return ret; } break; case 13: { int ret; ret = slice_del(z); /* delete, line 181 */ if (ret < 0) return ret; } break; case 14: { int ret; ret = slice_from_s(z, 1, s_20); /* <-, line 182 */ if (ret < 0) return ret; } break; case 15: { int ret; ret = slice_from_s(z, 1, s_21); /* <-, line 183 */ if (ret < 0) return ret; } break; case 16: { int ret; ret = slice_del(z); /* delete, line 184 */ if (ret < 0) return ret; } break; case 17: { int ret; ret = slice_del(z); /* delete, line 185 */ if (ret < 0) return ret; } break; case 18: { int ret; ret = slice_del(z); /* delete, line 186 */ if (ret < 0) return ret; } break; case 19: { int ret; ret = slice_from_s(z, 1, s_22); /* <-, line 187 */ if (ret < 0) return ret; } break; case 20: { int ret; ret = slice_from_s(z, 1, s_23); /* <-, line 188 */ if (ret < 0) return ret; } break; } return 1; }
static int r_standard_suffix(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 87 */ among_var = find_among_b(z, a_6, 46); /* substring, line 87 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 87 */ switch(among_var) { case 0: return 0; case 1: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 99 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 99 */ if (ret < 0) return ret; } break; case 2: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 105 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 105 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 106 */ z->ket = z->c; /* [, line 106 */ if (!(eq_s_b(z, 2, s_11))) { z->c = z->l - m; goto lab0; } z->bra = z->c; /* ], line 106 */ { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; goto lab0; } /* call R2, line 106 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 106 */ if (ret < 0) return ret; } lab0: ; } break; case 3: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 111 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 3, s_12); /* <-, line 111 */ if (ret < 0) return ret; } break; case 4: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 115 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 1, s_13); /* <-, line 115 */ if (ret < 0) return ret; } break; case 5: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 119 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 4, s_14); /* <-, line 119 */ if (ret < 0) return ret; } break; case 6: { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 123 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 123 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 124 */ z->ket = z->c; /* [, line 125 */ among_var = find_among_b(z, a_3, 4); /* substring, line 125 */ if (!(among_var)) { z->c = z->l - m; goto lab1; } z->bra = z->c; /* ], line 125 */ { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; goto lab1; } /* call R2, line 125 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 125 */ if (ret < 0) return ret; } switch(among_var) { case 0: { z->c = z->l - m; goto lab1; } case 1: z->ket = z->c; /* [, line 126 */ if (!(eq_s_b(z, 2, s_15))) { z->c = z->l - m; goto lab1; } z->bra = z->c; /* ], line 126 */ { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; goto lab1; } /* call R2, line 126 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 126 */ if (ret < 0) return ret; } break; } lab1: ; } break; case 7: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 135 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 135 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 136 */ z->ket = z->c; /* [, line 137 */ among_var = find_among_b(z, a_4, 3); /* substring, line 137 */ if (!(among_var)) { z->c = z->l - m; goto lab2; } z->bra = z->c; /* ], line 137 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab2; } case 1: { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; goto lab2; } /* call R2, line 140 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 140 */ if (ret < 0) return ret; } break; } lab2: ; } break; case 8: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 147 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 147 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 148 */ z->ket = z->c; /* [, line 149 */ among_var = find_among_b(z, a_5, 3); /* substring, line 149 */ if (!(among_var)) { z->c = z->l - m; goto lab3; } z->bra = z->c; /* ], line 149 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab3; } case 1: { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; goto lab3; } /* call R2, line 152 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 152 */ if (ret < 0) return ret; } break; } lab3: ; } break; case 9: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 159 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 159 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 160 */ z->ket = z->c; /* [, line 161 */ if (!(eq_s_b(z, 2, s_16))) { z->c = z->l - m; goto lab4; } z->bra = z->c; /* ], line 161 */ { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; goto lab4; } /* call R2, line 161 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 161 */ if (ret < 0) return ret; } lab4: ; } break; } return 1; }
static int r_standard_suffix(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 77 */ among_var = find_among_b(z, a_5, 45); /* substring, line 77 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 77 */ switch(among_var) { case 0: return 0; case 1: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 93 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 93 */ if (ret < 0) return ret; } break; case 2: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 98 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 3, s_4); /* <-, line 98 */ if (ret < 0) return ret; } break; case 3: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 102 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 1, s_5); /* <-, line 102 */ if (ret < 0) return ret; } break; case 4: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 106 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 4, s_6); /* <-, line 106 */ if (ret < 0) return ret; } break; case 5: { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 110 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 110 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 111 */ z->ket = z->c; /* [, line 112 */ among_var = find_among_b(z, a_2, 4); /* substring, line 112 */ if (!(among_var)) { z->c = z->l - m; goto lab0; } z->bra = z->c; /* ], line 112 */ { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; /* call R2, line 112 */ goto lab0; } if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 112 */ if (ret < 0) return ret; } switch(among_var) { case 0: { z->c = z->l - m; goto lab0; } case 1: z->ket = z->c; /* [, line 113 */ if (!(eq_s_b(z, 2, s_7))) { z->c = z->l - m; goto lab0; } z->bra = z->c; /* ], line 113 */ { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; /* call R2, line 113 */ goto lab0; } if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 113 */ if (ret < 0) return ret; } break; } lab0: ; } break; case 6: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 122 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 122 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 123 */ z->ket = z->c; /* [, line 124 */ among_var = find_among_b(z, a_3, 3); /* substring, line 124 */ if (!(among_var)) { z->c = z->l - m; goto lab1; } z->bra = z->c; /* ], line 124 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab1; } case 1: { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; /* call R2, line 127 */ goto lab1; } if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 127 */ if (ret < 0) return ret; } break; } lab1: ; } break; case 7: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 134 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 134 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 135 */ z->ket = z->c; /* [, line 136 */ among_var = find_among_b(z, a_4, 3); /* substring, line 136 */ if (!(among_var)) { z->c = z->l - m; goto lab2; } z->bra = z->c; /* ], line 136 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab2; } case 1: { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; /* call R2, line 139 */ goto lab2; } if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 139 */ if (ret < 0) return ret; } break; } lab2: ; } break; case 8: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 146 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 146 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 147 */ z->ket = z->c; /* [, line 148 */ if (!(eq_s_b(z, 2, s_8))) { z->c = z->l - m; goto lab3; } z->bra = z->c; /* ], line 148 */ { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; /* call R2, line 148 */ goto lab3; } if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 148 */ if (ret < 0) return ret; } lab3: ; } break; case 9: { int ret = r_RV(z); if (ret == 0) return 0; /* call RV, line 153 */ if (ret < 0) return ret; } if (!(eq_s_b(z, 1, s_9))) return 0; { int ret; ret = slice_from_s(z, 2, s_10); /* <-, line 154 */ if (ret < 0) return ret; } break; } return 1; }
static int r_exception1(struct SN_env * z) { int among_var; z->bra = z->c; /* [, line 169 */ among_var = find_among(z, a_10, 18); /* substring, line 169 */ if (!(among_var)) return 0; z->ket = z->c; /* ], line 169 */ if (z->c < z->l) return 0; /* atlimit, line 169 */ switch(among_var) { case 0: return 0; case 1: { int ret; ret = slice_from_s(z, 3, s_37); /* <-, line 173 */ if (ret < 0) return ret; } break; case 2: { int ret; ret = slice_from_s(z, 3, s_38); /* <-, line 174 */ if (ret < 0) return ret; } break; case 3: { int ret; ret = slice_from_s(z, 3, s_39); /* <-, line 175 */ if (ret < 0) return ret; } break; case 4: { int ret; ret = slice_from_s(z, 3, s_40); /* <-, line 176 */ if (ret < 0) return ret; } break; case 5: { int ret; ret = slice_from_s(z, 3, s_41); /* <-, line 177 */ if (ret < 0) return ret; } break; case 6: { int ret; ret = slice_from_s(z, 3, s_42); /* <-, line 181 */ if (ret < 0) return ret; } break; case 7: { int ret; ret = slice_from_s(z, 5, s_43); /* <-, line 182 */ if (ret < 0) return ret; } break; case 8: { int ret; ret = slice_from_s(z, 4, s_44); /* <-, line 183 */ if (ret < 0) return ret; } break; case 9: { int ret; ret = slice_from_s(z, 5, s_45); /* <-, line 184 */ if (ret < 0) return ret; } break; case 10: { int ret; ret = slice_from_s(z, 4, s_46); /* <-, line 185 */ if (ret < 0) return ret; } break; case 11: { int ret; ret = slice_from_s(z, 5, s_47); /* <-, line 186 */ if (ret < 0) return ret; } break; } return 1; }
extern int porter_UTF_8_stem(struct SN_env * z) { z->B[0] = 0; /* unset Y_found, line 115 */ { int c = z->c; /* do, line 116 */ z->bra = z->c; /* [, line 116 */ if (!(eq_s(z, 1, s_29))) goto lab0; z->ket = z->c; /* ], line 116 */ { int ret; ret = slice_from_s(z, 1, s_30); /* <-, line 116 */ if (ret < 0) return ret; } z->B[0] = 1; /* set Y_found, line 116 */ lab0: z->c = c; } { int c = z->c; /* do, line 117 */ while(1) { /* repeat, line 117 */ int c = z->c; while(1) { /* goto, line 117 */ int c = z->c; if (!(in_grouping_U(z, g_v, 97, 121))) goto lab3; z->bra = z->c; /* [, line 117 */ if (!(eq_s(z, 1, s_31))) goto lab3; z->ket = z->c; /* ], line 117 */ z->c = c; break; lab3: z->c = c; { int c = skip_utf8(z->p, z->c, 0, z->l, 1); if (c < 0) goto lab2; z->c = c; /* goto, line 117 */ } } { int ret; ret = slice_from_s(z, 1, s_32); /* <-, line 117 */ if (ret < 0) return ret; } z->B[0] = 1; /* set Y_found, line 117 */ continue; lab2: z->c = c; break; } z->c = c; } z->I[0] = z->l; z->I[1] = z->l; { int c = z->c; /* do, line 121 */ while(1) { /* gopast, line 122 */ if (!(in_grouping_U(z, g_v, 97, 121))) goto lab5; break; lab5: { int c = skip_utf8(z->p, z->c, 0, z->l, 1); if (c < 0) goto lab4; z->c = c; /* gopast, line 122 */ } } while(1) { /* gopast, line 122 */ if (!(out_grouping_U(z, g_v, 97, 121))) goto lab6; break; lab6: { int c = skip_utf8(z->p, z->c, 0, z->l, 1); if (c < 0) goto lab4; z->c = c; /* gopast, line 122 */ } } z->I[0] = z->c; /* setmark p1, line 122 */ while(1) { /* gopast, line 123 */ if (!(in_grouping_U(z, g_v, 97, 121))) goto lab7; break; lab7: { int c = skip_utf8(z->p, z->c, 0, z->l, 1); if (c < 0) goto lab4; z->c = c; /* gopast, line 123 */ } } while(1) { /* gopast, line 123 */ if (!(out_grouping_U(z, g_v, 97, 121))) goto lab8; break; lab8: { int c = skip_utf8(z->p, z->c, 0, z->l, 1); if (c < 0) goto lab4; z->c = c; /* gopast, line 123 */ } } z->I[1] = z->c; /* setmark p2, line 123 */ lab4: z->c = c; } z->lb = z->c; z->c = z->l; /* backwards, line 126 */ { int m = z->l - z->c; (void) m; /* do, line 127 */ { int ret = r_Step_1a(z); if (ret == 0) goto lab9; /* call Step_1a, line 127 */ if (ret < 0) return ret; } lab9: z->c = z->l - m; } { int m = z->l - z->c; (void) m; /* do, line 128 */ { int ret = r_Step_1b(z); if (ret == 0) goto lab10; /* call Step_1b, line 128 */ if (ret < 0) return ret; } lab10: z->c = z->l - m; } { int m = z->l - z->c; (void) m; /* do, line 129 */ { int ret = r_Step_1c(z); if (ret == 0) goto lab11; /* call Step_1c, line 129 */ if (ret < 0) return ret; } lab11: z->c = z->l - m; } { int m = z->l - z->c; (void) m; /* do, line 130 */ { int ret = r_Step_2(z); if (ret == 0) goto lab12; /* call Step_2, line 130 */ if (ret < 0) return ret; } lab12: z->c = z->l - m; } { int m = z->l - z->c; (void) m; /* do, line 131 */ { int ret = r_Step_3(z); if (ret == 0) goto lab13; /* call Step_3, line 131 */ if (ret < 0) return ret; } lab13: z->c = z->l - m; } { int m = z->l - z->c; (void) m; /* do, line 132 */ { int ret = r_Step_4(z); if (ret == 0) goto lab14; /* call Step_4, line 132 */ if (ret < 0) return ret; } lab14: z->c = z->l - m; } { int m = z->l - z->c; (void) m; /* do, line 133 */ { int ret = r_Step_5a(z); if (ret == 0) goto lab15; /* call Step_5a, line 133 */ if (ret < 0) return ret; } lab15: z->c = z->l - m; } { int m = z->l - z->c; (void) m; /* do, line 134 */ { int ret = r_Step_5b(z); if (ret == 0) goto lab16; /* call Step_5b, line 134 */ if (ret < 0) return ret; } lab16: z->c = z->l - m; } z->c = z->lb; { int c = z->c; /* do, line 137 */ if (!(z->B[0])) goto lab17; /* Boolean test Y_found, line 137 */ while(1) { /* repeat, line 137 */ int c = z->c; while(1) { /* goto, line 137 */ int c = z->c; z->bra = z->c; /* [, line 137 */ if (!(eq_s(z, 1, s_33))) goto lab19; z->ket = z->c; /* ], line 137 */ z->c = c; break; lab19: z->c = c; { int c = skip_utf8(z->p, z->c, 0, z->l, 1); if (c < 0) goto lab18; z->c = c; /* goto, line 137 */ } } { int ret; ret = slice_from_s(z, 1, s_34); /* <-, line 137 */ if (ret < 0) return ret; } continue; lab18: z->c = c; break; } lab17: z->c = c; } return 1; }
static int r_residual_suffix(struct SN_env * z) { int among_var; { int m = z->l - z->c; (void) m; /* try, line 190 */ z->ket = z->c; /* [, line 190 */ if (!(eq_s_b(z, 1, s_33))) { z->c = z->l - m; goto lab0; } z->bra = z->c; /* ], line 190 */ { int m_test = z->l - z->c; /* test, line 190 */ if (!(out_grouping_b(z, g_keep_with_s, 97, 232))) { z->c = z->l - m; goto lab0; } z->c = z->l - m_test; } { int ret; ret = slice_del(z); /* delete, line 190 */ if (ret < 0) return ret; } lab0: ; } { int m3; /* setlimit, line 191 */ int m = z->l - z->c; (void) m; if (z->c < z->I[0]) return 0; z->c = z->I[0]; /* tomark, line 191 */ m3 = z->lb; z->lb = z->c; z->c = z->l - m; z->ket = z->c; /* [, line 192 */ among_var = find_among_b(z, a_6, 7); /* substring, line 192 */ if (!(among_var)) { z->lb = m3; return 0; } z->bra = z->c; /* ], line 192 */ switch(among_var) { case 0: { z->lb = m3; return 0; } case 1: { int ret = r_R2(z); if (ret == 0) { z->lb = m3; return 0; } /* call R2, line 193 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* or, line 193 */ if (!(eq_s_b(z, 1, s_34))) goto lab2; goto lab1; lab2: z->c = z->l - m; if (!(eq_s_b(z, 1, s_35))) { z->lb = m3; return 0; } } lab1: { int ret; ret = slice_del(z); /* delete, line 193 */ if (ret < 0) return ret; } break; case 2: { int ret; ret = slice_from_s(z, 1, s_36); /* <-, line 195 */ if (ret < 0) return ret; } break; case 3: { int ret; ret = slice_del(z); /* delete, line 196 */ if (ret < 0) return ret; } break; case 4: if (!(eq_s_b(z, 2, s_37))) { z->lb = m3; return 0; } { int ret; ret = slice_del(z); /* delete, line 197 */ if (ret < 0) return ret; } break; } z->lb = m3; } return 1; }
static int r_Step_2(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 99 */ among_var = find_among_b(z, a_5, 24); /* substring, line 99 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 99 */ { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 99 */ if (ret < 0) return ret; } switch(among_var) { case 0: return 0; case 1: { int ret; ret = slice_from_s(z, 4, s_14); /* <-, line 100 */ if (ret < 0) return ret; } break; case 2: { int ret; ret = slice_from_s(z, 4, s_15); /* <-, line 101 */ if (ret < 0) return ret; } break; case 3: { int ret; ret = slice_from_s(z, 4, s_16); /* <-, line 102 */ if (ret < 0) return ret; } break; case 4: { int ret; ret = slice_from_s(z, 4, s_17); /* <-, line 103 */ if (ret < 0) return ret; } break; case 5: { int ret; ret = slice_from_s(z, 3, s_18); /* <-, line 104 */ if (ret < 0) return ret; } break; case 6: { int ret; ret = slice_from_s(z, 3, s_19); /* <-, line 106 */ if (ret < 0) return ret; } break; case 7: { int ret; ret = slice_from_s(z, 3, s_20); /* <-, line 108 */ if (ret < 0) return ret; } break; case 8: { int ret; ret = slice_from_s(z, 2, s_21); /* <-, line 110 */ if (ret < 0) return ret; } break; case 9: { int ret; ret = slice_from_s(z, 3, s_22); /* <-, line 111 */ if (ret < 0) return ret; } break; case 10: { int ret; ret = slice_from_s(z, 3, s_23); /* <-, line 113 */ if (ret < 0) return ret; } break; case 11: { int ret; ret = slice_from_s(z, 3, s_24); /* <-, line 115 */ if (ret < 0) return ret; } break; case 12: { int ret; ret = slice_from_s(z, 3, s_25); /* <-, line 117 */ if (ret < 0) return ret; } break; case 13: if (!(eq_s_b(z, 1, s_26))) return 0; { int ret; ret = slice_from_s(z, 2, s_27); /* <-, line 118 */ if (ret < 0) return ret; } break; case 14: { int ret; ret = slice_from_s(z, 3, s_28); /* <-, line 119 */ if (ret < 0) return ret; } break; case 15: { int ret; ret = slice_from_s(z, 4, s_29); /* <-, line 120 */ if (ret < 0) return ret; } break; case 16: if (!(in_grouping_b(z, g_valid_LI, 99, 116))) return 0; { int ret; ret = slice_del(z); /* delete, line 121 */ if (ret < 0) return ret; } break; } return 1; }
static int r_Step_1b(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 74 */ among_var = find_among_b(z, a_4, 6); /* substring, line 74 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 74 */ switch(among_var) { case 0: return 0; case 1: { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 76 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 2, s_8); /* <-, line 76 */ if (ret < 0) return ret; } break; case 2: { int m_test = z->l - z->c; /* test, line 79 */ while(1) { /* gopast, line 79 */ if (!(in_grouping_b(z, g_v, 97, 121))) goto lab0; break; lab0: if (z->c <= z->lb) return 0; z->c--; /* gopast, line 79 */ } z->c = z->l - m_test; } { int ret; ret = slice_del(z); /* delete, line 79 */ if (ret < 0) return ret; } { int m_test = z->l - z->c; /* test, line 80 */ among_var = find_among_b(z, a_3, 13); /* substring, line 80 */ if (!(among_var)) return 0; z->c = z->l - m_test; } switch(among_var) { case 0: return 0; case 1: { int ret; { int c = z->c; ret = insert_s(z, z->c, z->c, 1, s_9); /* <+, line 82 */ z->c = c; } if (ret < 0) return ret; } break; case 2: z->ket = z->c; /* [, line 85 */ if (z->c <= z->lb) return 0; z->c--; /* next, line 85 */ z->bra = z->c; /* ], line 85 */ { int ret; ret = slice_del(z); /* delete, line 85 */ if (ret < 0) return ret; } break; case 3: if (z->c != z->I[0]) return 0; /* atmark, line 86 */ { int m_test = z->l - z->c; /* test, line 86 */ { int ret = r_shortv(z); if (ret == 0) return 0; /* call shortv, line 86 */ if (ret < 0) return ret; } z->c = z->l - m_test; } { int ret; { int c = z->c; ret = insert_s(z, z->c, z->c, 1, s_10); /* <+, line 86 */ z->c = c; } if (ret < 0) return ret; } break; } break; } return 1; }
static int r_Step_1a(struct SN_env * z) { int among_var; { int m = z->l - z->c; (void) m; /* try, line 58 */ z->ket = z->c; /* [, line 59 */ among_var = find_among_b(z, a_1, 3); /* substring, line 59 */ if (!(among_var)) { z->c = z->l - m; goto lab0; } z->bra = z->c; /* ], line 59 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab0; } case 1: { int ret; ret = slice_del(z); /* delete, line 61 */ if (ret < 0) return ret; } break; } lab0: ; } z->ket = z->c; /* [, line 64 */ among_var = find_among_b(z, a_2, 6); /* substring, line 64 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 64 */ switch(among_var) { case 0: return 0; case 1: { int ret; ret = slice_from_s(z, 2, s_5); /* <-, line 65 */ if (ret < 0) return ret; } break; case 2: { int m = z->l - z->c; (void) m; /* or, line 67 */ if (z->c <= z->lb) goto lab2; z->c--; /* next, line 67 */ if (z->c > z->lb) goto lab2; /* atlimit, line 67 */ { int ret; ret = slice_from_s(z, 2, s_6); /* <-, line 67 */ if (ret < 0) return ret; } goto lab1; lab2: z->c = z->l - m; { int ret; ret = slice_from_s(z, 1, s_7); /* <-, line 67 */ if (ret < 0) return ret; } } lab1: break; case 3: if (z->c <= z->lb) return 0; z->c--; /* next, line 68 */ while(1) { /* gopast, line 68 */ if (!(in_grouping_b(z, g_v, 97, 121))) goto lab3; break; lab3: if (z->c <= z->lb) return 0; z->c--; /* gopast, line 68 */ } { int ret; ret = slice_del(z); /* delete, line 68 */ if (ret < 0) return ret; } break; } return 1; }
static int r_standard_suffix(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 83 */ among_var = find_among_b(z, a_3, 43); /* substring, line 83 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 83 */ switch(among_var) { case 0: return 0; case 1: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 87 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 87 */ if (ret < 0) return ret; } break; case 2: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 90 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 90 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 91 */ z->ket = z->c; /* [, line 91 */ if (!(eq_s_b(z, 2, s_14))) { z->c = z->l - m; goto lab0; } z->bra = z->c; /* ], line 91 */ { int m = z->l - z->c; (void) m; /* or, line 91 */ { int ret = r_R2(z); if (ret == 0) goto lab2; /* call R2, line 91 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 91 */ if (ret < 0) return ret; } goto lab1; lab2: z->c = z->l - m; { int ret; ret = slice_from_s(z, 3, s_15); /* <-, line 91 */ if (ret < 0) return ret; } } lab1: lab0: ; } break; case 3: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 95 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 3, s_16); /* <-, line 95 */ if (ret < 0) return ret; } break; case 4: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 98 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 1, s_17); /* <-, line 98 */ if (ret < 0) return ret; } break; case 5: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 101 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 3, s_18); /* <-, line 101 */ if (ret < 0) return ret; } break; case 6: { int ret = r_RV(z); if (ret == 0) return 0; /* call RV, line 105 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 105 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 106 */ z->ket = z->c; /* [, line 107 */ among_var = find_among_b(z, a_1, 6); /* substring, line 107 */ if (!(among_var)) { z->c = z->l - m; goto lab3; } z->bra = z->c; /* ], line 107 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab3; } case 1: { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; goto lab3; } /* call R2, line 108 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 108 */ if (ret < 0) return ret; } z->ket = z->c; /* [, line 108 */ if (!(eq_s_b(z, 2, s_19))) { z->c = z->l - m; goto lab3; } z->bra = z->c; /* ], line 108 */ { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; goto lab3; } /* call R2, line 108 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 108 */ if (ret < 0) return ret; } break; case 2: { int m = z->l - z->c; (void) m; /* or, line 109 */ { int ret = r_R2(z); if (ret == 0) goto lab5; /* call R2, line 109 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 109 */ if (ret < 0) return ret; } goto lab4; lab5: z->c = z->l - m; { int ret = r_R1(z); if (ret == 0) { z->c = z->l - m; goto lab3; } /* call R1, line 109 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 3, s_20); /* <-, line 109 */ if (ret < 0) return ret; } } lab4: break; case 3: { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; goto lab3; } /* call R2, line 111 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 111 */ if (ret < 0) return ret; } break; case 4: { int ret = r_RV(z); if (ret == 0) { z->c = z->l - m; goto lab3; } /* call RV, line 113 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 1, s_21); /* <-, line 113 */ if (ret < 0) return ret; } break; } lab3: ; } break; case 7: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 120 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 120 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 121 */ z->ket = z->c; /* [, line 122 */ among_var = find_among_b(z, a_2, 3); /* substring, line 122 */ if (!(among_var)) { z->c = z->l - m; goto lab6; } z->bra = z->c; /* ], line 122 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab6; } case 1: { int m = z->l - z->c; (void) m; /* or, line 123 */ { int ret = r_R2(z); if (ret == 0) goto lab8; /* call R2, line 123 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 123 */ if (ret < 0) return ret; } goto lab7; lab8: z->c = z->l - m; { int ret; ret = slice_from_s(z, 3, s_22); /* <-, line 123 */ if (ret < 0) return ret; } } lab7: break; case 2: { int m = z->l - z->c; (void) m; /* or, line 124 */ { int ret = r_R2(z); if (ret == 0) goto lab10; /* call R2, line 124 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 124 */ if (ret < 0) return ret; } goto lab9; lab10: z->c = z->l - m; { int ret; ret = slice_from_s(z, 3, s_23); /* <-, line 124 */ if (ret < 0) return ret; } } lab9: break; case 3: { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; goto lab6; } /* call R2, line 125 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 125 */ if (ret < 0) return ret; } break; } lab6: ; } break; case 8: { int ret = r_R2(z); if (ret == 0) return 0; /* call R2, line 132 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 132 */ if (ret < 0) return ret; } { int m = z->l - z->c; (void) m; /* try, line 133 */ z->ket = z->c; /* [, line 133 */ if (!(eq_s_b(z, 2, s_24))) { z->c = z->l - m; goto lab11; } z->bra = z->c; /* ], line 133 */ { int ret = r_R2(z); if (ret == 0) { z->c = z->l - m; goto lab11; } /* call R2, line 133 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 133 */ if (ret < 0) return ret; } z->ket = z->c; /* [, line 133 */ if (!(eq_s_b(z, 2, s_25))) { z->c = z->l - m; goto lab11; } z->bra = z->c; /* ], line 133 */ { int m = z->l - z->c; (void) m; /* or, line 133 */ { int ret = r_R2(z); if (ret == 0) goto lab13; /* call R2, line 133 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 133 */ if (ret < 0) return ret; } goto lab12; lab13: z->c = z->l - m; { int ret; ret = slice_from_s(z, 3, s_26); /* <-, line 133 */ if (ret < 0) return ret; } } lab12: lab11: ; } break; case 9: { int ret; ret = slice_from_s(z, 3, s_27); /* <-, line 135 */ if (ret < 0) return ret; } break; case 10: { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 136 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 2, s_28); /* <-, line 136 */ if (ret < 0) return ret; } break; case 11: { int m = z->l - z->c; (void) m; /* or, line 138 */ { int ret = r_R2(z); if (ret == 0) goto lab15; /* call R2, line 138 */ if (ret < 0) return ret; } { int ret; ret = slice_del(z); /* delete, line 138 */ if (ret < 0) return ret; } goto lab14; lab15: z->c = z->l - m; { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 138 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 3, s_29); /* <-, line 138 */ if (ret < 0) return ret; } } lab14: break; case 12: { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 141 */ if (ret < 0) return ret; } if (!(out_grouping_b(z, g_v, 97, 251))) return 0; { int ret; ret = slice_del(z); /* delete, line 141 */ if (ret < 0) return ret; } break; case 13: { int ret = r_RV(z); if (ret == 0) return 0; /* call RV, line 146 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 3, s_30); /* <-, line 146 */ if (ret < 0) return ret; } return 0; /* fail, line 146 */ break; case 14: { int ret = r_RV(z); if (ret == 0) return 0; /* call RV, line 147 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 3, s_31); /* <-, line 147 */ if (ret < 0) return ret; } return 0; /* fail, line 147 */ break; case 15: { int m_test = z->l - z->c; /* test, line 149 */ if (!(in_grouping_b(z, g_v, 97, 251))) return 0; { int ret = r_RV(z); if (ret == 0) return 0; /* call RV, line 149 */ if (ret < 0) return ret; } z->c = z->l - m_test; } { int ret; ret = slice_del(z); /* delete, line 149 */ if (ret < 0) return ret; } return 0; /* fail, line 149 */ break; } return 1; }
static int r_Step_1b(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 34 */ among_var = find_among_b(z, a_2, 3); /* substring, line 34 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 34 */ switch(among_var) { case 0: return 0; case 1: { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 35 */ if (ret < 0) return ret; } { int ret; ret = slice_from_s(z, 2, s_2); /* <-, line 35 */ if (ret < 0) return ret; } break; case 2: { int m_test = z->l - z->c; /* test, line 38 */ while(1) { /* gopast, line 38 */ if (!(in_grouping_b_U(z, g_v, 97, 121))) goto lab0; break; lab0: { int c = skip_utf8(z->p, z->c, z->lb, 0, -1); if (c < 0) return 0; z->c = c; /* gopast, line 38 */ } } z->c = z->l - m_test; } { int ret; ret = slice_del(z); /* delete, line 38 */ if (ret < 0) return ret; } { int m_test = z->l - z->c; /* test, line 39 */ among_var = find_among_b(z, a_1, 13); /* substring, line 39 */ if (!(among_var)) return 0; z->c = z->l - m_test; } switch(among_var) { case 0: return 0; case 1: { int ret; { int c = z->c; ret = insert_s(z, z->c, z->c, 1, s_3); /* <+, line 41 */ z->c = c; } if (ret < 0) return ret; } break; case 2: z->ket = z->c; /* [, line 44 */ { int c = skip_utf8(z->p, z->c, z->lb, 0, -1); if (c < 0) return 0; z->c = c; /* next, line 44 */ } z->bra = z->c; /* ], line 44 */ { int ret; ret = slice_del(z); /* delete, line 44 */ if (ret < 0) return ret; } break; case 3: if (z->c != z->I[0]) return 0; /* atmark, line 45 */ { int m_test = z->l - z->c; /* test, line 45 */ { int ret = r_shortv(z); if (ret == 0) return 0; /* call shortv, line 45 */ if (ret < 0) return ret; } z->c = z->l - m_test; } { int ret; { int c = z->c; ret = insert_s(z, z->c, z->c, 1, s_4); /* <+, line 45 */ z->c = c; } if (ret < 0) return ret; } break; } break; } return 1; }
static int r_plur_owner(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 193 */ among_var = find_among_b(z, a_11, 42); /* substring, line 193 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 193 */ { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 193 */ if (ret < 0) return ret; } switch(among_var) { case 0: return 0; case 1: { int ret; ret = slice_del(z); /* delete, line 194 */ if (ret < 0) return ret; } break; case 2: { int ret; ret = slice_from_s(z, 1, s_24); /* <-, line 195 */ if (ret < 0) return ret; } break; case 3: { int ret; ret = slice_from_s(z, 1, s_25); /* <-, line 196 */ if (ret < 0) return ret; } break; case 4: { int ret; ret = slice_del(z); /* delete, line 197 */ if (ret < 0) return ret; } break; case 5: { int ret; ret = slice_del(z); /* delete, line 198 */ if (ret < 0) return ret; } break; case 6: { int ret; ret = slice_del(z); /* delete, line 199 */ if (ret < 0) return ret; } break; case 7: { int ret; ret = slice_from_s(z, 1, s_26); /* <-, line 200 */ if (ret < 0) return ret; } break; case 8: { int ret; ret = slice_from_s(z, 1, s_27); /* <-, line 201 */ if (ret < 0) return ret; } break; case 9: { int ret; ret = slice_del(z); /* delete, line 202 */ if (ret < 0) return ret; } break; case 10: { int ret; ret = slice_del(z); /* delete, line 203 */ if (ret < 0) return ret; } break; case 11: { int ret; ret = slice_del(z); /* delete, line 204 */ if (ret < 0) return ret; } break; case 12: { int ret; ret = slice_from_s(z, 1, s_28); /* <-, line 205 */ if (ret < 0) return ret; } break; case 13: { int ret; ret = slice_from_s(z, 1, s_29); /* <-, line 206 */ if (ret < 0) return ret; } break; case 14: { int ret; ret = slice_del(z); /* delete, line 207 */ if (ret < 0) return ret; } break; case 15: { int ret; ret = slice_del(z); /* delete, line 208 */ if (ret < 0) return ret; } break; case 16: { int ret; ret = slice_del(z); /* delete, line 209 */ if (ret < 0) return ret; } break; case 17: { int ret; ret = slice_del(z); /* delete, line 210 */ if (ret < 0) return ret; } break; case 18: { int ret; ret = slice_from_s(z, 1, s_30); /* <-, line 211 */ if (ret < 0) return ret; } break; case 19: { int ret; ret = slice_from_s(z, 1, s_31); /* <-, line 212 */ if (ret < 0) return ret; } break; case 20: { int ret; ret = slice_del(z); /* delete, line 214 */ if (ret < 0) return ret; } break; case 21: { int ret; ret = slice_del(z); /* delete, line 215 */ if (ret < 0) return ret; } break; case 22: { int ret; ret = slice_from_s(z, 1, s_32); /* <-, line 216 */ if (ret < 0) return ret; } break; case 23: { int ret; ret = slice_from_s(z, 1, s_33); /* <-, line 217 */ if (ret < 0) return ret; } break; case 24: { int ret; ret = slice_del(z); /* delete, line 218 */ if (ret < 0) return ret; } break; case 25: { int ret; ret = slice_del(z); /* delete, line 219 */ if (ret < 0) return ret; } break; case 26: { int ret; ret = slice_del(z); /* delete, line 220 */ if (ret < 0) return ret; } break; case 27: { int ret; ret = slice_from_s(z, 1, s_34); /* <-, line 221 */ if (ret < 0) return ret; } break; case 28: { int ret; ret = slice_from_s(z, 1, s_35); /* <-, line 222 */ if (ret < 0) return ret; } break; case 29: { int ret; ret = slice_del(z); /* delete, line 223 */ if (ret < 0) return ret; } break; } return 1; }
static int r_Step_2(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 58 */ among_var = find_among_b(z, a_3, 20); /* substring, line 58 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 58 */ { int ret = r_R1(z); if (ret == 0) return 0; /* call R1, line 58 */ if (ret < 0) return ret; } switch(among_var) { case 0: return 0; case 1: { int ret; ret = slice_from_s(z, 4, s_8); /* <-, line 59 */ if (ret < 0) return ret; } break; case 2: { int ret; ret = slice_from_s(z, 4, s_9); /* <-, line 60 */ if (ret < 0) return ret; } break; case 3: { int ret; ret = slice_from_s(z, 4, s_10); /* <-, line 61 */ if (ret < 0) return ret; } break; case 4: { int ret; ret = slice_from_s(z, 4, s_11); /* <-, line 62 */ if (ret < 0) return ret; } break; case 5: { int ret; ret = slice_from_s(z, 3, s_12); /* <-, line 63 */ if (ret < 0) return ret; } break; case 6: { int ret; ret = slice_from_s(z, 1, s_13); /* <-, line 64 */ if (ret < 0) return ret; } break; case 7: { int ret; ret = slice_from_s(z, 3, s_14); /* <-, line 66 */ if (ret < 0) return ret; } break; case 8: { int ret; ret = slice_from_s(z, 3, s_15); /* <-, line 68 */ if (ret < 0) return ret; } break; case 9: { int ret; ret = slice_from_s(z, 2, s_16); /* <-, line 69 */ if (ret < 0) return ret; } break; case 10: { int ret; ret = slice_from_s(z, 2, s_17); /* <-, line 71 */ if (ret < 0) return ret; } break; case 11: { int ret; ret = slice_from_s(z, 3, s_18); /* <-, line 72 */ if (ret < 0) return ret; } break; case 12: { int ret; ret = slice_from_s(z, 3, s_19); /* <-, line 74 */ if (ret < 0) return ret; } break; case 13: { int ret; ret = slice_from_s(z, 3, s_20); /* <-, line 76 */ if (ret < 0) return ret; } break; case 14: { int ret; ret = slice_from_s(z, 3, s_21); /* <-, line 77 */ if (ret < 0) return ret; } break; } return 1; }
static int r_possessive(struct SN_env * z) { /* backwardmode */ int among_var; { int mlimit1; /* setlimit, line 70 */ if (z->c < z->I[0]) return 0; mlimit1 = z->lb; z->lb = z->I[0]; z->ket = z->c; /* [, line 70 */ among_var = find_among_b(z, a_4, 9); /* substring, line 70 */ if (!(among_var)) { z->lb = mlimit1; return 0; } z->bra = z->c; /* ], line 70 */ z->lb = mlimit1; } switch (among_var) { /* among, line 71 */ case 1: { int m2 = z->l - z->c; (void)m2; /* not, line 73 */ if (z->c <= z->lb || z->p[z->c - 1] != 'k') goto lab0; /* literal, line 73 */ z->c--; return 0; lab0: z->c = z->l - m2; } { int ret = slice_del(z); /* delete, line 73 */ if (ret < 0) return ret; } break; case 2: { int ret = slice_del(z); /* delete, line 75 */ if (ret < 0) return ret; } z->ket = z->c; /* [, line 75 */ if (!(eq_s_b(z, 3, s_0))) return 0; /* literal, line 75 */ z->bra = z->c; /* ], line 75 */ { int ret = slice_from_s(z, 3, s_1); /* <-, line 75 */ if (ret < 0) return ret; } break; case 3: { int ret = slice_del(z); /* delete, line 79 */ if (ret < 0) return ret; } break; case 4: if (z->c - 1 <= z->lb || z->p[z->c - 1] != 97) return 0; /* among, line 82 */ if (!(find_among_b(z, a_1, 6))) return 0; { int ret = slice_del(z); /* delete, line 82 */ if (ret < 0) return ret; } break; case 5: if (z->c - 2 <= z->lb || z->p[z->c - 1] != 164) return 0; /* among, line 84 */ if (!(find_among_b(z, a_2, 6))) return 0; { int ret = slice_del(z); /* delete, line 85 */ if (ret < 0) return ret; } break; case 6: if (z->c - 2 <= z->lb || z->p[z->c - 1] != 101) return 0; /* among, line 87 */ if (!(find_among_b(z, a_3, 2))) return 0; { int ret = slice_del(z); /* delete, line 87 */ if (ret < 0) return ret; } break; } return 1; }
static int r_attached_pronoun(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 68 */ if (!(find_among_b(z, a_1, 13))) return 0; /* substring, line 68 */ z->bra = z->c; /* ], line 68 */ among_var = find_among_b(z, a_2, 11); /* substring, line 72 */ if (!(among_var)) return 0; { int ret = r_RV(z); if (ret == 0) return 0; /* call RV, line 72 */ if (ret < 0) return ret; } switch(among_var) { case 0: return 0; case 1: z->bra = z->c; /* ], line 73 */ { int ret; ret = slice_from_s(z, 5, s_5); /* <-, line 73 */ if (ret < 0) return ret; } break; case 2: z->bra = z->c; /* ], line 74 */ { int ret; ret = slice_from_s(z, 4, s_6); /* <-, line 74 */ if (ret < 0) return ret; } break; case 3: z->bra = z->c; /* ], line 75 */ { int ret; ret = slice_from_s(z, 2, s_7); /* <-, line 75 */ if (ret < 0) return ret; } break; case 4: z->bra = z->c; /* ], line 76 */ { int ret; ret = slice_from_s(z, 2, s_8); /* <-, line 76 */ if (ret < 0) return ret; } break; case 5: z->bra = z->c; /* ], line 77 */ { int ret; ret = slice_from_s(z, 2, s_9); /* <-, line 77 */ if (ret < 0) return ret; } break; case 6: { int ret; ret = slice_del(z); /* delete, line 81 */ if (ret < 0) return ret; } break; case 7: if (!(eq_s_b(z, 1, s_10))) return 0; { int ret; ret = slice_del(z); /* delete, line 82 */ if (ret < 0) return ret; } break; } return 1; }
static int r_standard_suffix(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 104 */ among_var = find_among_b(z, a_6, 49); /* substring, line 104 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 104 */ switch(among_var) { case 0: return 0; case 1: if (!r_R2(z)) return 0; /* call R2, line 110 */ slice_del(z); /* delete, line 110 */ break; case 2: if (!r_R2(z)) return 0; /* call R2, line 112 */ slice_del(z); /* delete, line 112 */ { int m = z->l - z->c; /* try, line 113 */ z->ket = z->c; /* [, line 113 */ if (!(eq_s_b(z, 2, s_13))) { z->c = z->l - m; goto lab0; } z->bra = z->c; /* ], line 113 */ if (!r_R2(z)) { z->c = z->l - m; goto lab0; } /* call R2, line 113 */ slice_del(z); /* delete, line 113 */ lab0: ; } break; case 3: if (!r_R2(z)) return 0; /* call R2, line 116 */ slice_from_s(z, 3, s_14); /* <-, line 116 */ break; case 4: if (!r_R2(z)) return 0; /* call R2, line 118 */ slice_from_s(z, 1, s_15); /* <-, line 118 */ break; case 5: if (!r_R2(z)) return 0; /* call R2, line 120 */ slice_from_s(z, 4, s_16); /* <-, line 120 */ break; case 6: if (!r_RV(z)) return 0; /* call RV, line 122 */ slice_del(z); /* delete, line 122 */ break; case 7: if (!r_R1(z)) return 0; /* call R1, line 124 */ slice_del(z); /* delete, line 124 */ { int m = z->l - z->c; /* try, line 125 */ z->ket = z->c; /* [, line 126 */ among_var = find_among_b(z, a_4, 4); /* substring, line 126 */ if (!(among_var)) { z->c = z->l - m; goto lab1; } z->bra = z->c; /* ], line 126 */ if (!r_R2(z)) { z->c = z->l - m; goto lab1; } /* call R2, line 126 */ slice_del(z); /* delete, line 126 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab1; } case 1: z->ket = z->c; /* [, line 127 */ if (!(eq_s_b(z, 2, s_17))) { z->c = z->l - m; goto lab1; } z->bra = z->c; /* ], line 127 */ if (!r_R2(z)) { z->c = z->l - m; goto lab1; } /* call R2, line 127 */ slice_del(z); /* delete, line 127 */ break; } lab1: ; } break; case 8: if (!r_R2(z)) return 0; /* call R2, line 133 */ slice_del(z); /* delete, line 133 */ { int m = z->l - z->c; /* try, line 134 */ z->ket = z->c; /* [, line 135 */ among_var = find_among_b(z, a_5, 3); /* substring, line 135 */ if (!(among_var)) { z->c = z->l - m; goto lab2; } z->bra = z->c; /* ], line 135 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab2; } case 1: if (!r_R2(z)) { z->c = z->l - m; goto lab2; } /* call R2, line 136 */ slice_del(z); /* delete, line 136 */ break; } lab2: ; } break; case 9: if (!r_R2(z)) return 0; /* call R2, line 141 */ slice_del(z); /* delete, line 141 */ { int m = z->l - z->c; /* try, line 142 */ z->ket = z->c; /* [, line 142 */ if (!(eq_s_b(z, 2, s_18))) { z->c = z->l - m; goto lab3; } z->bra = z->c; /* ], line 142 */ if (!r_R2(z)) { z->c = z->l - m; goto lab3; } /* call R2, line 142 */ slice_del(z); /* delete, line 142 */ z->ket = z->c; /* [, line 142 */ if (!(eq_s_b(z, 2, s_19))) { z->c = z->l - m; goto lab3; } z->bra = z->c; /* ], line 142 */ if (!r_R2(z)) { z->c = z->l - m; goto lab3; } /* call R2, line 142 */ slice_del(z); /* delete, line 142 */ lab3: ; } break; } return 1; }
static int r_remove_first_order_prefix(struct SN_env * z) { /* forwardmode */ int among_var; z->bra = z->c; /* [, line 146 */ if (z->c + 1 >= z->l || (z->p[z->c + 1] != 105 && z->p[z->c + 1] != 101)) return 0; /* substring, line 146 */ among_var = find_among(z, a_3, 12); if (!(among_var)) return 0; z->ket = z->c; /* ], line 146 */ switch (among_var) { /* among, line 146 */ case 1: { int ret = slice_del(z); /* delete, line 147 */ if (ret < 0) return ret; } z->I[1] = 1; /* $prefix = <integer expression>, line 147 */ z->I[0] -= 1; /* $measure -= <integer expression>, line 147 */ break; case 2: { int ret = slice_del(z); /* delete, line 148 */ if (ret < 0) return ret; } z->I[1] = 3; /* $prefix = <integer expression>, line 148 */ z->I[0] -= 1; /* $measure -= <integer expression>, line 148 */ break; case 3: z->I[1] = 1; /* $prefix = <integer expression>, line 149 */ { int ret = slice_from_s(z, 1, s_1); /* <-, line 149 */ if (ret < 0) return ret; } z->I[0] -= 1; /* $measure -= <integer expression>, line 149 */ break; case 4: z->I[1] = 3; /* $prefix = <integer expression>, line 150 */ { int ret = slice_from_s(z, 1, s_2); /* <-, line 150 */ if (ret < 0) return ret; } z->I[0] -= 1; /* $measure -= <integer expression>, line 150 */ break; case 5: z->I[1] = 1; /* $prefix = <integer expression>, line 151 */ z->I[0] -= 1; /* $measure -= <integer expression>, line 151 */ { int c1 = z->c; /* or, line 151 */ { int c2 = z->c; /* and, line 151 */ if (in_grouping_U(z, g_vowel, 97, 117, 0)) goto lab1; /* grouping vowel, line 151 */ z->c = c2; { int ret = slice_from_s(z, 1, s_3); /* <-, line 151 */ if (ret < 0) return ret; } } goto lab0; lab1: z->c = c1; { int ret = slice_del(z); /* delete, line 151 */ if (ret < 0) return ret; } } lab0: break; case 6: z->I[1] = 3; /* $prefix = <integer expression>, line 152 */ z->I[0] -= 1; /* $measure -= <integer expression>, line 152 */ { int c3 = z->c; /* or, line 152 */ { int c4 = z->c; /* and, line 152 */ if (in_grouping_U(z, g_vowel, 97, 117, 0)) goto lab3; /* grouping vowel, line 152 */ z->c = c4; { int ret = slice_from_s(z, 1, s_4); /* <-, line 152 */ if (ret < 0) return ret; } } goto lab2; lab3: z->c = c3; { int ret = slice_del(z); /* delete, line 152 */ if (ret < 0) return ret; } } lab2: break; } return 1; }
static int r_standard_suffix(struct SN_env * z) { int among_var; z->ket = z->c; /* [, line 77 */ among_var = find_among_b(z, a_5, 42); /* substring, line 77 */ if (!(among_var)) return 0; z->bra = z->c; /* ], line 77 */ switch(among_var) { case 0: return 0; case 1: if (!r_R2(z)) return 0; /* call R2, line 92 */ slice_del(z); /* delete, line 92 */ break; case 2: if (!r_R2(z)) return 0; /* call R2, line 97 */ slice_from_s(z, 3, s_4); /* <-, line 97 */ break; case 3: if (!r_R2(z)) return 0; /* call R2, line 101 */ slice_from_s(z, 1, s_5); /* <-, line 101 */ break; case 4: if (!r_R2(z)) return 0; /* call R2, line 105 */ slice_from_s(z, 4, s_6); /* <-, line 105 */ break; case 5: if (!r_R1(z)) return 0; /* call R1, line 109 */ slice_del(z); /* delete, line 109 */ { int m = z->l - z->c; /* try, line 110 */ z->ket = z->c; /* [, line 111 */ among_var = find_among_b(z, a_2, 4); /* substring, line 111 */ if (!(among_var)) { z->c = z->l - m; goto lab0; } z->bra = z->c; /* ], line 111 */ if (!r_R2(z)) { z->c = z->l - m; goto lab0; } /* call R2, line 111 */ slice_del(z); /* delete, line 111 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab0; } case 1: z->ket = z->c; /* [, line 112 */ if (!(eq_s_b(z, 2, s_7))) { z->c = z->l - m; goto lab0; } z->bra = z->c; /* ], line 112 */ if (!r_R2(z)) { z->c = z->l - m; goto lab0; } /* call R2, line 112 */ slice_del(z); /* delete, line 112 */ break; } lab0: ; } break; case 6: if (!r_R2(z)) return 0; /* call R2, line 121 */ slice_del(z); /* delete, line 121 */ { int m = z->l - z->c; /* try, line 122 */ z->ket = z->c; /* [, line 123 */ among_var = find_among_b(z, a_3, 2); /* substring, line 123 */ if (!(among_var)) { z->c = z->l - m; goto lab1; } z->bra = z->c; /* ], line 123 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab1; } case 1: if (!r_R2(z)) { z->c = z->l - m; goto lab1; } /* call R2, line 125 */ slice_del(z); /* delete, line 125 */ break; } lab1: ; } break; case 7: if (!r_R2(z)) return 0; /* call R2, line 132 */ slice_del(z); /* delete, line 132 */ { int m = z->l - z->c; /* try, line 133 */ z->ket = z->c; /* [, line 134 */ among_var = find_among_b(z, a_4, 3); /* substring, line 134 */ if (!(among_var)) { z->c = z->l - m; goto lab2; } z->bra = z->c; /* ], line 134 */ switch(among_var) { case 0: { z->c = z->l - m; goto lab2; } case 1: if (!r_R2(z)) { z->c = z->l - m; goto lab2; } /* call R2, line 137 */ slice_del(z); /* delete, line 137 */ break; } lab2: ; } break; case 8: if (!r_R2(z)) return 0; /* call R2, line 144 */ slice_del(z); /* delete, line 144 */ { int m = z->l - z->c; /* try, line 145 */ z->ket = z->c; /* [, line 146 */ if (!(eq_s_b(z, 2, s_8))) { z->c = z->l - m; goto lab3; } z->bra = z->c; /* ], line 146 */ if (!r_R2(z)) { z->c = z->l - m; goto lab3; } /* call R2, line 146 */ slice_del(z); /* delete, line 146 */ lab3: ; } break; case 9: if (!r_RV(z)) return 0; /* call RV, line 151 */ if (!(eq_s_b(z, 1, s_9))) return 0; slice_from_s(z, 2, s_10); /* <-, line 152 */ break; } return 1; }
static int r_prelude(struct SN_env * z) { int among_var; { int c_test = z->c; /* test, line 35 */ while(1) { /* repeat, line 35 */ int c = z->c; z->bra = z->c; /* [, line 36 */ among_var = find_among(z, a_0, 7); /* substring, line 36 */ if (!(among_var)) goto lab0; z->ket = z->c; /* ], line 36 */ switch(among_var) { case 0: goto lab0; case 1: slice_from_s(z, 1, s_0); /* <-, line 37 */ break; case 2: slice_from_s(z, 1, s_1); /* <-, line 38 */ break; case 3: slice_from_s(z, 1, s_2); /* <-, line 39 */ break; case 4: slice_from_s(z, 1, s_3); /* <-, line 40 */ break; case 5: slice_from_s(z, 1, s_4); /* <-, line 41 */ break; case 6: slice_from_s(z, 2, s_5); /* <-, line 42 */ break; case 7: if (z->c >= z->l) goto lab0; z->c++; /* next, line 43 */ break; } continue; lab0: z->c = c; break; } z->c = c_test; } while(1) { /* repeat, line 46 */ int c = z->c; while(1) { /* goto, line 46 */ int c = z->c; if (!(in_grouping(z, g_v, 97, 249))) goto lab2; z->bra = z->c; /* [, line 47 */ { int c = z->c; /* or, line 47 */ if (!(eq_s(z, 1, s_6))) goto lab4; z->ket = z->c; /* ], line 47 */ if (!(in_grouping(z, g_v, 97, 249))) goto lab4; slice_from_s(z, 1, s_7); /* <-, line 47 */ goto lab3; lab4: z->c = c; if (!(eq_s(z, 1, s_8))) goto lab2; z->ket = z->c; /* ], line 48 */ if (!(in_grouping(z, g_v, 97, 249))) goto lab2; slice_from_s(z, 1, s_9); /* <-, line 48 */ } lab3: z->c = c; break; lab2: z->c = c; if (z->c >= z->l) goto lab1; z->c++; } continue; lab1: z->c = c; break; } return 1; }
extern int french_ISO_8859_1_stem(struct SN_env * z) { { int c = z->c; /* do, line 214 */ { int ret = r_prelude(z); if (ret == 0) goto lab0; /* call prelude, line 214 */ if (ret < 0) return ret; } lab0: z->c = c; } { int c = z->c; /* do, line 215 */ { int ret = r_mark_regions(z); if (ret == 0) goto lab1; /* call mark_regions, line 215 */ if (ret < 0) return ret; } lab1: z->c = c; } z->lb = z->c; z->c = z->l; /* backwards, line 216 */ { int m = z->l - z->c; (void) m; /* do, line 218 */ { int m = z->l - z->c; (void) m; /* or, line 228 */ { int m = z->l - z->c; (void) m; /* and, line 224 */ { int m = z->l - z->c; (void) m; /* or, line 220 */ { int ret = r_standard_suffix(z); if (ret == 0) goto lab6; /* call standard_suffix, line 220 */ if (ret < 0) return ret; } goto lab5; lab6: z->c = z->l - m; { int ret = r_i_verb_suffix(z); if (ret == 0) goto lab7; /* call i_verb_suffix, line 221 */ if (ret < 0) return ret; } goto lab5; lab7: z->c = z->l - m; { int ret = r_verb_suffix(z); if (ret == 0) goto lab4; /* call verb_suffix, line 222 */ if (ret < 0) return ret; } } lab5: z->c = z->l - m; { int m = z->l - z->c; (void) m; /* try, line 225 */ z->ket = z->c; /* [, line 225 */ { int m = z->l - z->c; (void) m; /* or, line 225 */ if (!(eq_s_b(z, 1, s_41))) goto lab10; z->bra = z->c; /* ], line 225 */ { int ret; ret = slice_from_s(z, 1, s_42); /* <-, line 225 */ if (ret < 0) return ret; } goto lab9; lab10: z->c = z->l - m; if (!(eq_s_b(z, 1, s_43))) { z->c = z->l - m; goto lab8; } z->bra = z->c; /* ], line 226 */ { int ret; ret = slice_from_s(z, 1, s_44); /* <-, line 226 */ if (ret < 0) return ret; } } lab9: lab8: ; } } goto lab3; lab4: z->c = z->l - m; { int ret = r_residual_suffix(z); if (ret == 0) goto lab2; /* call residual_suffix, line 229 */ if (ret < 0) return ret; } } lab3: lab2: z->c = z->l - m; } { int m = z->l - z->c; (void) m; /* do, line 234 */ { int ret = r_un_double(z); if (ret == 0) goto lab11; /* call un_double, line 234 */ if (ret < 0) return ret; } lab11: z->c = z->l - m; } { int m = z->l - z->c; (void) m; /* do, line 235 */ { int ret = r_un_accent(z); if (ret == 0) goto lab12; /* call un_accent, line 235 */ if (ret < 0) return ret; } lab12: z->c = z->l - m; } z->c = z->lb; { int c = z->c; /* do, line 237 */ { int ret = r_postlude(z); if (ret == 0) goto lab13; /* call postlude, line 237 */ if (ret < 0) return ret; } lab13: z->c = c; } return 1; }