Header And Logo

PostgreSQL
| The world's most advanced open source database.

Functions

stem_UTF_8_french.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

struct SN_envfrench_UTF_8_create_env (void)
void french_UTF_8_close_env (struct SN_env *z)
int french_UTF_8_stem (struct SN_env *z)

Function Documentation

void french_UTF_8_close_env ( struct SN_env z  ) 

Definition at line 1255 of file stem_UTF_8_french.c.

References SN_close_env().

{ SN_close_env(z, 0); }

struct SN_env* french_UTF_8_create_env ( void   )  [read]

Definition at line 1253 of file stem_UTF_8_french.c.

References SN_create_env().

{ return SN_create_env(0, 3, 0); }

int french_UTF_8_stem ( struct SN_env z  ) 

Definition at line 1147 of file stem_UTF_8_french.c.

References SN_env::bra, SN_env::c, eq_s_b(), SN_env::ket, SN_env::l, SN_env::lb, r_i_verb_suffix(), r_mark_regions(), r_postlude(), r_prelude(), r_residual_suffix(), r_standard_suffix(), r_un_accent(), r_un_double(), r_verb_suffix(), s_41, s_42, s_43, s_44, and slice_from_s().

                                                {
    {   int c1 = z->c; /* do, line 223 */
        {   int ret = r_prelude(z);
            if (ret == 0) goto lab0; /* call prelude, line 223 */
            if (ret < 0) return ret;
        }
    lab0:
        z->c = c1;
    }
    {   int c2 = z->c; /* do, line 224 */
        {   int ret = r_mark_regions(z);
            if (ret == 0) goto lab1; /* call mark_regions, line 224 */
            if (ret < 0) return ret;
        }
    lab1:
        z->c = c2;
    }
    z->lb = z->c; z->c = z->l; /* backwards, line 225 */

    {   int m3 = z->l - z->c; (void)m3; /* do, line 227 */
        {   int m4 = z->l - z->c; (void)m4; /* or, line 237 */
            {   int m5 = z->l - z->c; (void)m5; /* and, line 233 */
                {   int m6 = z->l - z->c; (void)m6; /* or, line 229 */
                    {   int ret = r_standard_suffix(z);
                        if (ret == 0) goto lab6; /* call standard_suffix, line 229 */
                        if (ret < 0) return ret;
                    }
                    goto lab5;
                lab6:
                    z->c = z->l - m6;
                    {   int ret = r_i_verb_suffix(z);
                        if (ret == 0) goto lab7; /* call i_verb_suffix, line 230 */
                        if (ret < 0) return ret;
                    }
                    goto lab5;
                lab7:
                    z->c = z->l - m6;
                    {   int ret = r_verb_suffix(z);
                        if (ret == 0) goto lab4; /* call verb_suffix, line 231 */
                        if (ret < 0) return ret;
                    }
                }
            lab5:
                z->c = z->l - m5;
                {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 234 */
                    z->ket = z->c; /* [, line 234 */
                    {   int m7 = z->l - z->c; (void)m7; /* or, line 234 */
                        if (!(eq_s_b(z, 1, s_41))) goto lab10;
                        z->bra = z->c; /* ], line 234 */
                        {   int ret = slice_from_s(z, 1, s_42); /* <-, line 234 */
                            if (ret < 0) return ret;
                        }
                        goto lab9;
                    lab10:
                        z->c = z->l - m7;
                        if (!(eq_s_b(z, 2, s_43))) { z->c = z->l - m_keep; goto lab8; }
                        z->bra = z->c; /* ], line 235 */
                        {   int ret = slice_from_s(z, 1, s_44); /* <-, line 235 */
                            if (ret < 0) return ret;
                        }
                    }
                lab9:
                lab8:
                    ;
                }
            }
            goto lab3;
        lab4:
            z->c = z->l - m4;
            {   int ret = r_residual_suffix(z);
                if (ret == 0) goto lab2; /* call residual_suffix, line 238 */
                if (ret < 0) return ret;
            }
        }
    lab3:
    lab2:
        z->c = z->l - m3;
    }
    {   int m8 = z->l - z->c; (void)m8; /* do, line 243 */
        {   int ret = r_un_double(z);
            if (ret == 0) goto lab11; /* call un_double, line 243 */
            if (ret < 0) return ret;
        }
    lab11:
        z->c = z->l - m8;
    }
    {   int m9 = z->l - z->c; (void)m9; /* do, line 244 */
        {   int ret = r_un_accent(z);
            if (ret == 0) goto lab12; /* call un_accent, line 244 */
            if (ret < 0) return ret;
        }
    lab12:
        z->c = z->l - m9;
    }
    z->c = z->lb;
    {   int c10 = z->c; /* do, line 246 */
        {   int ret = r_postlude(z);
            if (ret == 0) goto lab13; /* call postlude, line 246 */
            if (ret < 0) return ret;
        }
    lab13:
        z->c = c10;
    }
    return 1;
}