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 717 of file stem_ISO_8859_1_finnish.c.

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

References SN_close_env().

◆ finnish_ISO_8859_1_create_env()

struct SN_env* finnish_ISO_8859_1_create_env ( void  )

Definition at line 715 of file stem_ISO_8859_1_finnish.c.

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

References SN_create_env().

◆ finnish_ISO_8859_1_stem()

int finnish_ISO_8859_1_stem ( struct SN_env z)

Definition at line 654 of file stem_ISO_8859_1_finnish.c.

654  {
655  { int c1 = z->c;
656  { int ret = r_mark_regions(z);
657  if (ret < 0) return ret;
658  }
659  z->c = c1;
660  }
661  z->I[2] = 0;
662  z->lb = z->c; z->c = z->l;
663 
664  { int m2 = z->l - z->c; (void)m2;
665  { int ret = r_particle_etc(z);
666  if (ret < 0) return ret;
667  }
668  z->c = z->l - m2;
669  }
670  { int m3 = z->l - z->c; (void)m3;
671  { int ret = r_possessive(z);
672  if (ret < 0) return ret;
673  }
674  z->c = z->l - m3;
675  }
676  { int m4 = z->l - z->c; (void)m4;
677  { int ret = r_case_ending(z);
678  if (ret < 0) return ret;
679  }
680  z->c = z->l - m4;
681  }
682  { int m5 = z->l - z->c; (void)m5;
683  { int ret = r_other_endings(z);
684  if (ret < 0) return ret;
685  }
686  z->c = z->l - m5;
687  }
688 
689  if (!(z->I[2])) goto lab1;
690  { int m6 = z->l - z->c; (void)m6;
691  { int ret = r_i_plural(z);
692  if (ret < 0) return ret;
693  }
694  z->c = z->l - m6;
695  }
696  goto lab0;
697 lab1:
698  { int m7 = z->l - z->c; (void)m7;
699  { int ret = r_t_plural(z);
700  if (ret < 0) return ret;
701  }
702  z->c = z->l - m7;
703  }
704 lab0:
705  { int m8 = z->l - z->c; (void)m8;
706  { int ret = r_tidy(z);
707  if (ret < 0) return ret;
708  }
709  z->c = z->l - m8;
710  }
711  z->c = z->lb;
712  return 1;
713 }
static int r_case_ending(struct SN_env *z)
static int r_tidy(struct SN_env *z)
static int r_other_endings(struct SN_env *z)
static int r_t_plural(struct SN_env *z)
static int r_i_plural(struct SN_env *z)
static int r_possessive(struct SN_env *z)
static int r_mark_regions(struct SN_env *z)
static int r_particle_etc(struct SN_env *z)
int lb
Definition: api.h:16
int * I
Definition: api.h:18
int c
Definition: api.h:16
int l
Definition: api.h:16

References SN_env::c, SN_env::I, 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().