PostgreSQL Source Code git master
stem_UTF_8_english.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_envenglish_UTF_8_create_env (void)
 
void english_UTF_8_close_env (struct SN_env *z)
 
int english_UTF_8_stem (struct SN_env *z)
 

Function Documentation

◆ english_UTF_8_close_env()

void english_UTF_8_close_env ( struct SN_env z)

Definition at line 1187 of file stem_UTF_8_english.c.

1187 {
1188 SN_delete_env(z);
1189}
void SN_delete_env(struct SN_env *z)
Definition: api.c:18

References SN_delete_env().

◆ english_UTF_8_create_env()

struct SN_env * english_UTF_8_create_env ( void  )

Definition at line 1177 of file stem_UTF_8_english.c.

1177 {
1178 struct SN_env * z = SN_new_env(sizeof(SN_local));
1179 if (z) {
1180 ((SN_local *)z)->b_Y_found = 0;
1181 ((SN_local *)z)->i_p2 = 0;
1182 ((SN_local *)z)->i_p1 = 0;
1183 }
1184 return z;
1185}
struct SN_env * SN_new_env(int alloc_size)
Definition: api.c:5
Definition: api.h:15

References SN_new_env().

◆ english_UTF_8_stem()

int english_UTF_8_stem ( struct SN_env z)

Definition at line 1074 of file stem_UTF_8_english.c.

1074 {
1075 do {
1076 int v_1 = z->c;
1077 {
1078 int ret = r_exception1(z);
1079 if (ret == 0) goto lab0;
1080 if (ret < 0) return ret;
1081 }
1082 break;
1083 lab0:
1084 z->c = v_1;
1085 {
1086 int v_2 = z->c;
1087 {
1088 int ret = skip_utf8(z->p, z->c, z->l, 3);
1089 if (ret < 0) goto lab2;
1090 z->c = ret;
1091 }
1092 goto lab1;
1093 lab2:
1094 z->c = v_2;
1095 }
1096 break;
1097 lab1:
1098 z->c = v_1;
1099 {
1100 int ret = r_prelude(z);
1101 if (ret < 0) return ret;
1102 }
1103 {
1104 int ret = r_mark_regions(z);
1105 if (ret < 0) return ret;
1106 }
1107 z->lb = z->c; z->c = z->l;
1108 {
1109 int v_3 = z->l - z->c;
1110 {
1111 int ret = r_Step_1a(z);
1112 if (ret < 0) return ret;
1113 }
1114 z->c = z->l - v_3;
1115 }
1116 {
1117 int v_4 = z->l - z->c;
1118 {
1119 int ret = r_Step_1b(z);
1120 if (ret < 0) return ret;
1121 }
1122 z->c = z->l - v_4;
1123 }
1124 {
1125 int v_5 = z->l - z->c;
1126 {
1127 int ret = r_Step_1c(z);
1128 if (ret < 0) return ret;
1129 }
1130 z->c = z->l - v_5;
1131 }
1132 {
1133 int v_6 = z->l - z->c;
1134 {
1135 int ret = r_Step_2(z);
1136 if (ret < 0) return ret;
1137 }
1138 z->c = z->l - v_6;
1139 }
1140 {
1141 int v_7 = z->l - z->c;
1142 {
1143 int ret = r_Step_3(z);
1144 if (ret < 0) return ret;
1145 }
1146 z->c = z->l - v_7;
1147 }
1148 {
1149 int v_8 = z->l - z->c;
1150 {
1151 int ret = r_Step_4(z);
1152 if (ret < 0) return ret;
1153 }
1154 z->c = z->l - v_8;
1155 }
1156 {
1157 int v_9 = z->l - z->c;
1158 {
1159 int ret = r_Step_5(z);
1160 if (ret < 0) return ret;
1161 }
1162 z->c = z->l - v_9;
1163 }
1164 z->c = z->lb;
1165 {
1166 int v_10 = z->c;
1167 {
1168 int ret = r_postlude(z);
1169 if (ret < 0) return ret;
1170 }
1171 z->c = v_10;
1172 }
1173 } while (0);
1174 return 1;
1175}
static int r_Step_3(struct SN_env *z)
static int r_Step_5(struct SN_env *z)
static int r_exception1(struct SN_env *z)
static int r_Step_1c(struct SN_env *z)
static int r_postlude(struct SN_env *z)
static int r_prelude(struct SN_env *z)
static int r_Step_1a(struct SN_env *z)
static int r_mark_regions(struct SN_env *z)
static int r_Step_4(struct SN_env *z)
static int r_Step_2(struct SN_env *z)
static int r_Step_1b(struct SN_env *z)
int lb
Definition: api.h:17
symbol * p
Definition: api.h:16
int c
Definition: api.h:17
int l
Definition: api.h:17
int skip_utf8(const symbol *p, int c, int limit, int n)
Definition: utilities.c:43

References SN_env::c, SN_env::l, SN_env::lb, SN_env::p, r_exception1(), r_mark_regions(), r_postlude(), r_prelude(), r_Step_1a(), r_Step_1b(), r_Step_1c(), r_Step_2(), r_Step_3(), r_Step_4(), r_Step_5(), and skip_utf8().