PostgreSQL Source Code  git master
stem_ISO_8859_1_finnish.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_envfinnish_ISO_8859_1_create_env (void)
 
void finnish_ISO_8859_1_close_env (struct SN_env *z)
 
int finnish_ISO_8859_1_stem (struct SN_env *z)
 

Function Documentation

◆ finnish_ISO_8859_1_close_env()

void finnish_ISO_8859_1_close_env ( struct SN_env z)

Definition at line 761 of file stem_ISO_8859_1_finnish.c.

References SN_close_env().

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

◆ finnish_ISO_8859_1_create_env()

struct SN_env* finnish_ISO_8859_1_create_env ( void  )

Definition at line 759 of file stem_ISO_8859_1_finnish.c.

References SN_create_env().

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

◆ finnish_ISO_8859_1_stem()

int finnish_ISO_8859_1_stem ( struct SN_env z)

Definition at line 680 of file stem_ISO_8859_1_finnish.c.

References SN_env::B, SN_env::c, SN_env::l, SN_env::lb, r_case_ending(), r_i_plural(), r_mark_regions(), r_other_endings(), r_particle_etc(), r_possessive(), r_t_plural(), and r_tidy().

680  {
681  { int c1 = z->c; /* do, line 185 */
682  { int ret = r_mark_regions(z);
683  if (ret == 0) goto lab0; /* call mark_regions, line 185 */
684  if (ret < 0) return ret;
685  }
686  lab0:
687  z->c = c1;
688  }
689  z->B[0] = 0; /* unset ending_removed, line 186 */
690  z->lb = z->c; z->c = z->l; /* backwards, line 187 */
691 
692  { int m2 = z->l - z->c; (void)m2; /* do, line 188 */
693  { int ret = r_particle_etc(z);
694  if (ret == 0) goto lab1; /* call particle_etc, line 188 */
695  if (ret < 0) return ret;
696  }
697  lab1:
698  z->c = z->l - m2;
699  }
700  { int m3 = z->l - z->c; (void)m3; /* do, line 189 */
701  { int ret = r_possessive(z);
702  if (ret == 0) goto lab2; /* call possessive, line 189 */
703  if (ret < 0) return ret;
704  }
705  lab2:
706  z->c = z->l - m3;
707  }
708  { int m4 = z->l - z->c; (void)m4; /* do, line 190 */
709  { int ret = r_case_ending(z);
710  if (ret == 0) goto lab3; /* call case_ending, line 190 */
711  if (ret < 0) return ret;
712  }
713  lab3:
714  z->c = z->l - m4;
715  }
716  { int m5 = z->l - z->c; (void)m5; /* do, line 191 */
717  { int ret = r_other_endings(z);
718  if (ret == 0) goto lab4; /* call other_endings, line 191 */
719  if (ret < 0) return ret;
720  }
721  lab4:
722  z->c = z->l - m5;
723  }
724  { int m6 = z->l - z->c; (void)m6; /* or, line 192 */
725  if (!(z->B[0])) goto lab6; /* Boolean test ending_removed, line 192 */
726  { int m7 = z->l - z->c; (void)m7; /* do, line 192 */
727  { int ret = r_i_plural(z);
728  if (ret == 0) goto lab7; /* call i_plural, line 192 */
729  if (ret < 0) return ret;
730  }
731  lab7:
732  z->c = z->l - m7;
733  }
734  goto lab5;
735  lab6:
736  z->c = z->l - m6;
737  { int m8 = z->l - z->c; (void)m8; /* do, line 192 */
738  { int ret = r_t_plural(z);
739  if (ret == 0) goto lab8; /* call t_plural, line 192 */
740  if (ret < 0) return ret;
741  }
742  lab8:
743  z->c = z->l - m8;
744  }
745  }
746 lab5:
747  { int m9 = z->l - z->c; (void)m9; /* do, line 193 */
748  { int ret = r_tidy(z);
749  if (ret == 0) goto lab9; /* call tidy, line 193 */
750  if (ret < 0) return ret;
751  }
752  lab9:
753  z->c = z->l - m9;
754  }
755  z->c = z->lb;
756  return 1;
757 }
static int r_tidy(struct SN_env *z)
static int r_i_plural(struct SN_env *z)
static int r_t_plural(struct SN_env *z)
int c
Definition: api.h:16
int lb
Definition: api.h:16
static int r_case_ending(struct SN_env *z)
static int r_other_endings(struct SN_env *z)
unsigned char * B
Definition: api.h:19
static int r_mark_regions(struct SN_env *z)
int l
Definition: api.h:16
static int r_possessive(struct SN_env *z)
static int r_particle_etc(struct SN_env *z)