PostgreSQL Source Code  git master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
stem_UTF_8_turkish.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_envturkish_UTF_8_create_env (void)
 
void turkish_UTF_8_close_env (struct SN_env *z)
 
int turkish_UTF_8_stem (struct SN_env *z)
 

Function Documentation

void turkish_UTF_8_close_env ( struct SN_env z)

Definition at line 2204 of file stem_UTF_8_turkish.c.

References SN_close_env().

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

Definition at line 2202 of file stem_UTF_8_turkish.c.

References SN_create_env().

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

Definition at line 2170 of file stem_UTF_8_turkish.c.

References SN_env::B, SN_env::c, SN_env::l, SN_env::lb, r_more_than_one_syllable_word(), r_postlude(), r_stem_nominal_verb_suffixes(), and r_stem_noun_suffixes().

2170  {
2171  { int ret = r_more_than_one_syllable_word(z);
2172  if (ret == 0) return 0; /* call more_than_one_syllable_word, line 465 */
2173  if (ret < 0) return ret;
2174  }
2175  z->lb = z->c; z->c = z->l; /* backwards, line 467 */
2176 
2177  { int m1 = z->l - z->c; (void)m1; /* do, line 468 */
2178  { int ret = r_stem_nominal_verb_suffixes(z);
2179  if (ret == 0) goto lab0; /* call stem_nominal_verb_suffixes, line 468 */
2180  if (ret < 0) return ret;
2181  }
2182  lab0:
2183  z->c = z->l - m1;
2184  }
2185  if (!(z->B[0])) return 0; /* Boolean test continue_stemming_noun_suffixes, line 469 */
2186  { int m2 = z->l - z->c; (void)m2; /* do, line 470 */
2187  { int ret = r_stem_noun_suffixes(z);
2188  if (ret == 0) goto lab1; /* call stem_noun_suffixes, line 470 */
2189  if (ret < 0) return ret;
2190  }
2191  lab1:
2192  z->c = z->l - m2;
2193  }
2194  z->c = z->lb;
2195  { int ret = r_postlude(z);
2196  if (ret == 0) return 0; /* call postlude, line 473 */
2197  if (ret < 0) return ret;
2198  }
2199  return 1;
2200 }
static int r_postlude(struct SN_env *z)
static int r_stem_noun_suffixes(struct SN_env *z)
int c
Definition: api.h:16
int lb
Definition: api.h:16
static int r_stem_nominal_verb_suffixes(struct SN_env *z)
unsigned char * B
Definition: api.h:19
int l
Definition: api.h:16
static int r_more_than_one_syllable_word(struct SN_env *z)