⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 english_stem.c

📁 PostgreSQL7.4.6 for Linux
💻 C
📖 第 1 页 / 共 2 页
字号:
	return 1;}static intr_Step_1b(struct SN_env * z){	int			among_var;	z->ket = z->c;				/* [, line 64 */	among_var = find_among_b(z, a_3, 6);		/* substring, line 64 */	if (!(among_var))		return 0;	z->bra = z->c;				/* ], line 64 */	switch (among_var)	{		case 0:			return 0;		case 1:			if (!r_R1(z))				return 0;		/* call R1, line 66 */			slice_from_s(z, 2, s_7);	/* <-, line 66 */			break;		case 2:			{				int			m_test = z->l - z->c;		/* test, line 69 */				while (1)				{				/* gopast, line 69 */					if (!(in_grouping_b(z, g_v, 97, 121)))						goto lab0;					break;			lab0:					if (z->c <= z->lb)						return 0;					z->c--;				}				z->c = z->l - m_test;			}			slice_del(z);		/* delete, line 69 */			{				int			m_test = z->l - z->c;		/* test, line 70 */				among_var = find_among_b(z, a_2, 13);	/* substring, line 70 */				if (!(among_var))					return 0;				z->c = z->l - m_test;			}			switch (among_var)			{				case 0:					return 0;				case 1:					{						int			c = z->c;						insert_s(z, z->c, z->c, 1, s_8);		/* <+, line 72 */						z->c = c;					}					break;				case 2:					z->ket = z->c;		/* [, line 75 */					if (z->c <= z->lb)						return 0;					z->c--;		/* next, line 75 */					z->bra = z->c;		/* ], line 75 */					slice_del(z);		/* delete, line 75 */					break;				case 3:					if (z->c != z->I[0])						return 0;		/* atmark, line 76 */					{						int			m_test = z->l - z->c;		/* test, line 76 */						if (!r_shortv(z))							return 0;	/* call shortv, line 76 */						z->c = z->l - m_test;					}					{						int			c = z->c;						insert_s(z, z->c, z->c, 1, s_9);		/* <+, line 76 */						z->c = c;					}					break;			}			break;	}	return 1;}static intr_Step_1c(struct SN_env * z){	z->ket = z->c;				/* [, line 83 */	{		int			m = z->l - z->c;	/* or, line 83 */		if (!(eq_s_b(z, 1, s_10)))			goto lab1;		goto lab0;lab1:		z->c = z->l - m;		if (!(eq_s_b(z, 1, s_11)))			return 0;	}lab0:	z->bra = z->c;				/* ], line 83 */	if (!(out_grouping_b(z, g_v, 97, 121)))		return 0;	{		int			m = z->l - z->c;	/* not, line 84 */		if (z->c > z->lb)			goto lab2;			/* atlimit, line 84 */		return 0;lab2:		z->c = z->l - m;	}	slice_from_s(z, 1, s_12);	/* <-, line 85 */	return 1;}static intr_Step_2(struct SN_env * z){	int			among_var;	z->ket = z->c;				/* [, line 89 */	among_var = find_among_b(z, a_4, 24);		/* substring, line 89 */	if (!(among_var))		return 0;	z->bra = z->c;				/* ], line 89 */	if (!r_R1(z))		return 0;				/* call R1, line 89 */	switch (among_var)	{		case 0:			return 0;		case 1:			slice_from_s(z, 4, s_13);	/* <-, line 90 */			break;		case 2:			slice_from_s(z, 4, s_14);	/* <-, line 91 */			break;		case 3:			slice_from_s(z, 4, s_15);	/* <-, line 92 */			break;		case 4:			slice_from_s(z, 4, s_16);	/* <-, line 93 */			break;		case 5:			slice_from_s(z, 3, s_17);	/* <-, line 94 */			break;		case 6:			slice_from_s(z, 3, s_18);	/* <-, line 96 */			break;		case 7:			slice_from_s(z, 3, s_19);	/* <-, line 98 */			break;		case 8:			slice_from_s(z, 2, s_20);	/* <-, line 100 */			break;		case 9:			slice_from_s(z, 3, s_21);	/* <-, line 101 */			break;		case 10:			slice_from_s(z, 3, s_22);	/* <-, line 103 */			break;		case 11:			slice_from_s(z, 3, s_23);	/* <-, line 105 */			break;		case 12:			slice_from_s(z, 3, s_24);	/* <-, line 107 */			break;		case 13:			if (!(eq_s_b(z, 1, s_25)))				return 0;			slice_from_s(z, 2, s_26);	/* <-, line 108 */			break;		case 14:			slice_from_s(z, 3, s_27);	/* <-, line 109 */			break;		case 15:			slice_from_s(z, 4, s_28);	/* <-, line 110 */			break;		case 16:			if (!(in_grouping_b(z, g_valid_LI, 99, 116)))				return 0;			slice_del(z);		/* delete, line 111 */			break;	}	return 1;}static intr_Step_3(struct SN_env * z){	int			among_var;	z->ket = z->c;				/* [, line 116 */	among_var = find_among_b(z, a_5, 9);		/* substring, line 116 */	if (!(among_var))		return 0;	z->bra = z->c;				/* ], line 116 */	if (!r_R1(z))		return 0;				/* call R1, line 116 */	switch (among_var)	{		case 0:			return 0;		case 1:			slice_from_s(z, 4, s_29);	/* <-, line 117 */			break;		case 2:			slice_from_s(z, 3, s_30);	/* <-, line 118 */			break;		case 3:			slice_from_s(z, 2, s_31);	/* <-, line 119 */			break;		case 4:			slice_from_s(z, 2, s_32);	/* <-, line 121 */			break;		case 5:			slice_del(z);		/* delete, line 123 */			break;		case 6:			if (!r_R2(z))				return 0;		/* call R2, line 125 */			slice_del(z);		/* delete, line 125 */			break;	}	return 1;}static intr_Step_4(struct SN_env * z){	int			among_var;	z->ket = z->c;				/* [, line 130 */	among_var = find_among_b(z, a_6, 18);		/* substring, line 130 */	if (!(among_var))		return 0;	z->bra = z->c;				/* ], line 130 */	if (!r_R2(z))		return 0;				/* call R2, line 130 */	switch (among_var)	{		case 0:			return 0;		case 1:			slice_del(z);		/* delete, line 133 */			break;		case 2:			{				int			m = z->l - z->c;	/* or, line 134 */				if (!(eq_s_b(z, 1, s_33)))					goto lab1;				goto lab0;		lab1:				z->c = z->l - m;				if (!(eq_s_b(z, 1, s_34)))					return 0;			}	lab0:			slice_del(z);		/* delete, line 134 */			break;	}	return 1;}static intr_Step_5(struct SN_env * z){	int			among_var;	z->ket = z->c;				/* [, line 139 */	among_var = find_among_b(z, a_7, 2);		/* substring, line 139 */	if (!(among_var))		return 0;	z->bra = z->c;				/* ], line 139 */	switch (among_var)	{		case 0:			return 0;		case 1:			{				int			m = z->l - z->c;	/* or, line 140 */				if (!r_R2(z))					goto lab1;	/* call R2, line 140 */				goto lab0;		lab1:				z->c = z->l - m;				if (!r_R1(z))					return 0;	/* call R1, line 140 */				{					int			m = z->l - z->c;		/* not, line 140 */					if (!r_shortv(z))						goto lab2;		/* call shortv, line 140 */					return 0;			lab2:					z->c = z->l - m;				}			}	lab0:			slice_del(z);		/* delete, line 140 */			break;		case 2:			if (!r_R2(z))				return 0;		/* call R2, line 141 */			if (!(eq_s_b(z, 1, s_35)))				return 0;			slice_del(z);		/* delete, line 141 */			break;	}	return 1;}static intr_exception2(struct SN_env * z){	z->ket = z->c;				/* [, line 147 */	if (!(find_among_b(z, a_8, 8)))		return 0;				/* substring, line 147 */	z->bra = z->c;				/* ], line 147 */	if (z->c > z->lb)		return 0;				/* atlimit, line 147 */	return 1;}static intr_exception1(struct SN_env * z){	int			among_var;	z->bra = z->c;				/* [, line 159 */	among_var = find_among(z, a_9, 18); /* substring, line 159 */	if (!(among_var))		return 0;	z->ket = z->c;				/* ], line 159 */	if (z->c < z->l)		return 0;				/* atlimit, line 159 */	switch (among_var)	{		case 0:			return 0;		case 1:			slice_from_s(z, 3, s_36);	/* <-, line 163 */			break;		case 2:			slice_from_s(z, 3, s_37);	/* <-, line 164 */			break;		case 3:			slice_from_s(z, 3, s_38);	/* <-, line 165 */			break;		case 4:			slice_from_s(z, 3, s_39);	/* <-, line 166 */			break;		case 5:			slice_from_s(z, 3, s_40);	/* <-, line 167 */			break;		case 6:			slice_from_s(z, 3, s_41);	/* <-, line 171 */			break;		case 7:			slice_from_s(z, 5, s_42);	/* <-, line 172 */			break;		case 8:			slice_from_s(z, 4, s_43);	/* <-, line 173 */			break;		case 9:			slice_from_s(z, 5, s_44);	/* <-, line 174 */			break;		case 10:			slice_from_s(z, 4, s_45);	/* <-, line 175 */			break;		case 11:			slice_from_s(z, 5, s_46);	/* <-, line 176 */			break;	}	return 1;}static intr_postlude(struct SN_env * z){	if (!(z->B[0]))		return 0;				/* Boolean test Y_found, line 192 */	while (1)	{							/* repeat, line 192 */		int			c = z->c;		while (1)		{						/* goto, line 192 */			int			c = z->c;			z->bra = z->c;		/* [, line 192 */			if (!(eq_s(z, 1, s_47)))				goto lab1;			z->ket = z->c;		/* ], line 192 */			z->c = c;			break;	lab1:			z->c = c;			if (z->c >= z->l)				goto lab0;			z->c++;		}		slice_from_s(z, 1, s_48);		/* <-, line 192 */		continue;lab0:		z->c = c;		break;	}	return 1;}extern intenglish_stem(struct SN_env * z){	{		int			c = z->c;	/* or, line 196 */		if (!r_exception1(z))			goto lab1;			/* call exception1, line 196 */		goto lab0;lab1:		z->c = c;		{			int			c_test = z->c;	/* test, line 198 */			{				int			c = z->c + 3;				if (0 > c || c > z->l)					return 0;				z->c = c;		/* hop, line 198 */			}			z->c = c_test;		}		{			int			c = z->c;		/* do, line 199 */			if (!r_prelude(z))				goto lab2;		/* call prelude, line 199 */	lab2:			z->c = c;		}		{			int			c = z->c;		/* do, line 200 */			if (!r_mark_regions(z))				goto lab3;		/* call mark_regions, line 200 */	lab3:			z->c = c;		}		z->lb = z->c;		z->c = z->l;			/* backwards, line 201 */		{			int			m = z->l - z->c;		/* do, line 203 */			if (!r_Step_1a(z))				goto lab4;		/* call Step_1a, line 203 */	lab4:			z->c = z->l - m;		}		{			int			m = z->l - z->c;		/* or, line 205 */			if (!r_exception2(z))				goto lab6;		/* call exception2, line 205 */			goto lab5;	lab6:			z->c = z->l - m;			{				int			m = z->l - z->c;	/* do, line 207 */				if (!r_Step_1b(z))					goto lab7;	/* call Step_1b, line 207 */		lab7:				z->c = z->l - m;			}			{				int			m = z->l - z->c;	/* do, line 208 */				if (!r_Step_1c(z))					goto lab8;	/* call Step_1c, line 208 */		lab8:				z->c = z->l - m;			}			{				int			m = z->l - z->c;	/* do, line 210 */				if (!r_Step_2(z))					goto lab9;	/* call Step_2, line 210 */		lab9:				z->c = z->l - m;			}			{				int			m = z->l - z->c;	/* do, line 211 */				if (!r_Step_3(z))					goto lab10; /* call Step_3, line 211 */		lab10:				z->c = z->l - m;			}			{				int			m = z->l - z->c;	/* do, line 212 */				if (!r_Step_4(z))					goto lab11; /* call Step_4, line 212 */		lab11:				z->c = z->l - m;			}			{				int			m = z->l - z->c;	/* do, line 214 */				if (!r_Step_5(z))					goto lab12; /* call Step_5, line 214 */		lab12:				z->c = z->l - m;			}		}lab5:		z->c = z->lb;		{			int			c = z->c;		/* do, line 217 */			if (!r_postlude(z))				goto lab13;		/* call postlude, line 217 */	lab13:			z->c = c;		}	}lab0:	return 1;}extern struct SN_env *english_create_env(void){	return SN_create_env(0, 2, 1);}extern voidenglish_close_env(struct SN_env * z){	SN_close_env(z);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -