PostgreSQL Source Code git master
stem_UTF_8_italian.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_envitalian_UTF_8_create_env (void)
 
void italian_UTF_8_close_env (struct SN_env *z)
 
int italian_UTF_8_stem (struct SN_env *z)
 

Function Documentation

◆ italian_UTF_8_close_env()

void italian_UTF_8_close_env ( struct SN_env z)

Definition at line 1096 of file stem_UTF_8_italian.c.

1096 {
1097 SN_delete_env(z);
1098}
void SN_delete_env(struct SN_env *z)
Definition: api.c:18

References SN_delete_env().

◆ italian_UTF_8_create_env()

struct SN_env * italian_UTF_8_create_env ( void  )

Definition at line 1086 of file stem_UTF_8_italian.c.

1086 {
1087 struct SN_env * z = SN_new_env(sizeof(SN_local));
1088 if (z) {
1089 ((SN_local *)z)->i_p2 = 0;
1090 ((SN_local *)z)->i_p1 = 0;
1091 ((SN_local *)z)->i_pV = 0;
1092 }
1093 return z;
1094}
struct SN_env * SN_new_env(int alloc_size)
Definition: api.c:5
Definition: api.h:15

References SN_new_env().

◆ italian_UTF_8_stem()

int italian_UTF_8_stem ( struct SN_env z)

Definition at line 1023 of file stem_UTF_8_italian.c.

1023 {
1024 {
1025 int v_1 = z->c;
1026 {
1027 int ret = r_prelude(z);
1028 if (ret < 0) return ret;
1029 }
1030 z->c = v_1;
1031 }
1032 {
1033 int ret = r_mark_regions(z);
1034 if (ret < 0) return ret;
1035 }
1036 z->lb = z->c; z->c = z->l;
1037 {
1038 int v_2 = z->l - z->c;
1039 {
1040 int ret = r_attached_pronoun(z);
1041 if (ret < 0) return ret;
1042 }
1043 z->c = z->l - v_2;
1044 }
1045 {
1046 int v_3 = z->l - z->c;
1047 do {
1048 int v_4 = z->l - z->c;
1049 {
1050 int ret = r_standard_suffix(z);
1051 if (ret == 0) goto lab1;
1052 if (ret < 0) return ret;
1053 }
1054 break;
1055 lab1:
1056 z->c = z->l - v_4;
1057 {
1058 int ret = r_verb_suffix(z);
1059 if (ret == 0) goto lab0;
1060 if (ret < 0) return ret;
1061 }
1062 } while (0);
1063 lab0:
1064 z->c = z->l - v_3;
1065 }
1066 {
1067 int v_5 = z->l - z->c;
1068 {
1069 int ret = r_vowel_suffix(z);
1070 if (ret < 0) return ret;
1071 }
1072 z->c = z->l - v_5;
1073 }
1074 z->c = z->lb;
1075 {
1076 int v_6 = z->c;
1077 {
1078 int ret = r_postlude(z);
1079 if (ret < 0) return ret;
1080 }
1081 z->c = v_6;
1082 }
1083 return 1;
1084}
static int r_standard_suffix(struct SN_env *z)
static int r_verb_suffix(struct SN_env *z)
static int r_postlude(struct SN_env *z)
static int r_attached_pronoun(struct SN_env *z)
static int r_prelude(struct SN_env *z)
static int r_vowel_suffix(struct SN_env *z)
static int r_mark_regions(struct SN_env *z)
int lb
Definition: api.h:17
int c
Definition: api.h:17
int l
Definition: api.h:17

References SN_env::c, SN_env::l, SN_env::lb, r_attached_pronoun(), r_mark_regions(), r_postlude(), r_prelude(), r_standard_suffix(), r_verb_suffix(), and r_vowel_suffix().