PostgreSQL Source Code  git master
stem_UTF_8_portuguese.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_envportuguese_UTF_8_create_env (void)
 
void portuguese_UTF_8_close_env (struct SN_env *z)
 
int portuguese_UTF_8_stem (struct SN_env *z)
 

Function Documentation

◆ portuguese_UTF_8_close_env()

void portuguese_UTF_8_close_env ( struct SN_env z)

Definition at line 1022 of file stem_UTF_8_portuguese.c.

References SN_close_env().

1022 { SN_close_env(z, 0); }
void SN_close_env(struct SN_env *z, int S_size)
Definition: api.c:40

◆ portuguese_UTF_8_create_env()

struct SN_env* portuguese_UTF_8_create_env ( void  )

Definition at line 1020 of file stem_UTF_8_portuguese.c.

References SN_create_env().

1020 { return SN_create_env(0, 3, 0); }
struct SN_env * SN_create_env(int S_size, int I_size, int B_size)
Definition: api.c:3

◆ portuguese_UTF_8_stem()

int portuguese_UTF_8_stem ( struct SN_env z)

Definition at line 932 of file stem_UTF_8_portuguese.c.

References SN_env::bra, SN_env::c, eq_s_b(), SN_env::ket, SN_env::l, SN_env::lb, r_mark_regions(), r_postlude(), r_prelude(), r_residual_form(), r_residual_suffix(), r_RV(), r_standard_suffix(), r_verb_suffix(), s_16, s_17, and slice_del().

932  {
933  { int c1 = z->c; /* do, line 202 */
934  { int ret = r_prelude(z);
935  if (ret == 0) goto lab0; /* call prelude, line 202 */
936  if (ret < 0) return ret;
937  }
938  lab0:
939  z->c = c1;
940  }
941  { int c2 = z->c; /* do, line 203 */
942  { int ret = r_mark_regions(z);
943  if (ret == 0) goto lab1; /* call mark_regions, line 203 */
944  if (ret < 0) return ret;
945  }
946  lab1:
947  z->c = c2;
948  }
949  z->lb = z->c; z->c = z->l; /* backwards, line 204 */
950 
951  { int m3 = z->l - z->c; (void)m3; /* do, line 205 */
952  { int m4 = z->l - z->c; (void)m4; /* or, line 209 */
953  { int m5 = z->l - z->c; (void)m5; /* and, line 207 */
954  { int m6 = z->l - z->c; (void)m6; /* or, line 206 */
955  { int ret = r_standard_suffix(z);
956  if (ret == 0) goto lab6; /* call standard_suffix, line 206 */
957  if (ret < 0) return ret;
958  }
959  goto lab5;
960  lab6:
961  z->c = z->l - m6;
962  { int ret = r_verb_suffix(z);
963  if (ret == 0) goto lab4; /* call verb_suffix, line 206 */
964  if (ret < 0) return ret;
965  }
966  }
967  lab5:
968  z->c = z->l - m5;
969  { int m7 = z->l - z->c; (void)m7; /* do, line 207 */
970  z->ket = z->c; /* [, line 207 */
971  if (!(eq_s_b(z, 1, s_16))) goto lab7;
972  z->bra = z->c; /* ], line 207 */
973  { int m_test = z->l - z->c; /* test, line 207 */
974  if (!(eq_s_b(z, 1, s_17))) goto lab7;
975  z->c = z->l - m_test;
976  }
977  { int ret = r_RV(z);
978  if (ret == 0) goto lab7; /* call RV, line 207 */
979  if (ret < 0) return ret;
980  }
981  { int ret = slice_del(z); /* delete, line 207 */
982  if (ret < 0) return ret;
983  }
984  lab7:
985  z->c = z->l - m7;
986  }
987  }
988  goto lab3;
989  lab4:
990  z->c = z->l - m4;
991  { int ret = r_residual_suffix(z);
992  if (ret == 0) goto lab2; /* call residual_suffix, line 209 */
993  if (ret < 0) return ret;
994  }
995  }
996  lab3:
997  lab2:
998  z->c = z->l - m3;
999  }
1000  { int m8 = z->l - z->c; (void)m8; /* do, line 211 */
1001  { int ret = r_residual_form(z);
1002  if (ret == 0) goto lab8; /* call residual_form, line 211 */
1003  if (ret < 0) return ret;
1004  }
1005  lab8:
1006  z->c = z->l - m8;
1007  }
1008  z->c = z->lb;
1009  { int c9 = z->c; /* do, line 213 */
1010  { int ret = r_postlude(z);
1011  if (ret == 0) goto lab9; /* call postlude, line 213 */
1012  if (ret < 0) return ret;
1013  }
1014  lab9:
1015  z->c = c9;
1016  }
1017  return 1;
1018 }
static int r_residual_form(struct SN_env *z)
static int r_verb_suffix(struct SN_env *z)
int eq_s_b(struct SN_env *z, int s_size, const symbol *s)
Definition: utilities.c:194
static const symbol s_16[]
int ket
Definition: api.h:16
int slice_del(struct SN_env *z)
Definition: utilities.c:401
int bra
Definition: api.h:16
int c
Definition: api.h:16
static const symbol s_17[]
static int r_standard_suffix(struct SN_env *z)
int lb
Definition: api.h:16
static int r_postlude(struct SN_env *z)
static int r_residual_suffix(struct SN_env *z)
static int r_prelude(struct SN_env *z)
static int r_mark_regions(struct SN_env *z)
int l
Definition: api.h:16
static int r_RV(struct SN_env *z)