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

📄 eqn.c

📁 这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易于我们学习和理解
💻 C
📖 第 1 页 / 共 2 页
字号:
#define	CONTIG	57346#define	QTEXT	57347#define	SPACE	57348#define	THIN	57349#define	TAB	57350#define	MATRIX	57351#define	LCOL	57352#define	CCOL	57353#define	RCOL	57354#define	COL	57355#define	ABOVE	57356#define	MARK	57357#define	LINEUP	57358#define	SUM	57359#define	INT	57360#define	PROD	57361#define	UNION	57362#define	INTER	57363#define	DEFINE	57364#define	TDEFINE	57365#define	NDEFINE	57366#define	DELIM	57367#define	GSIZE	57368#define	GFONT	57369#define	INCLUDE	57370#define	IFDEF	57371#define	DOTEQ	57372#define	DOTEN	57373#define	FROM	57374#define	TO	57375#define	OVER	57376#define	SQRT	57377#define	SUP	57378#define	SUB	57379#define	SIZE	57380#define	FONT	57381#define	ROMAN	57382#define	ITALIC	57383#define	BOLD	57384#define	FAT	57385#define	UP	57386#define	DOWN	57387#define	BACK	57388#define	FWD	57389#define	LEFT	57390#define	RIGHT	57391#define	DOT	57392#define	DOTDOT	57393#define	HAT	57394#define	TILDE	57395#define	BAR	57396#define	LOWBAR	57397#define	HIGHBAR	57398#define	UNDER	57399#define	VEC	57400#define	DYAD	57401#define	UTILDE	57402#line	17	"/sys/src/cmd/eqn/eqn.y"#include "e.h"int	yylex(void);extern	int	yyerrflag;#ifndef	YYMAXDEPTH#define	YYMAXDEPTH	150#endif#ifndef	YYSTYPE#define	YYSTYPE	int#endifYYSTYPE	yylval;YYSTYPE	yyval;#define YYEOFCODE 1#define YYERRCODE 2#line	140	"/sys/src/cmd/eqn/eqn.y"short	yyexca[] ={-1, 0,	1, 3,	-2, 0,-1, 1,	1, -1,	-2, 0,};#define	YYNPROD	90#define	YYPRIVATE 57344#define	YYLAST	469short	yyact[] ={   4, 103, 119,  45,  27, 118, 104,   2, 102,  41,  42,  43,  44,  65,  80,  81,  79,  66,  67,  68,  69,  70,  50,  49,  74,  75,  76,  77, 105,  73,  40,  80,  81,  80,  81, 114,  61,  64,  54,  62,  57,  58,  59,  60,  55,  56,  63,  78,  91,  92,  82,  26,  83,  85,  86,  87,  88,  90,  51,  52,  48, 124,  50,  49, 117,  25,  45, 117,  72,  71,  80,  81, 113,  24,  45,  23,  61,  64,  54,  62,  57,  58,  59,  60,  55,  56,  63,  53,  89, 100,  84,  22,  96,  95, 106, 107, 108, 109,  99, 110, 111,  41,  42,  43,  44,  45,  98, 115,  21,  94,  93,  18, 130, 123,  17, 116, 121,  46, 112, 125, 127, 128,   1, 129, 126,   0,   0,  45,   8,   7,   9,  10,  11,  28,  41,  42,  43,  44,   0,  16,  47,  12,  34,  13,  14,  15,  61,  64,  54,  62,  57,  58,  59,  60,  55,  56,  63,   0,   0,  20,   0,   0,  29,  33,  30,  31,  32,  19,  37,  39,  38,  36,  35,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   6,  97,   8,   7,   9,  10,  11,  28,  41,  42,  43,  44,   0,  16,  47,  12,  34,  13,  14,  15,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,  20,   0,   0,  29,  33,  30,  31,  32,  19,  37,  39,  38,  36,  35, 101,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   3,   6,   8,   7,   9,  10,  11,  28,  41,  42,  43,  44,   0,  16,   5,  12,  34,  13,  14,  15,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,  20,   0,   0,  29,  33,  30,  31,  32,  19,  37,  39,  38,  36,  35,   0,   0,   8,   7,   9,  10,  11,  28,  41,  42,  43,  44,   6,  16,  47,  12,  34,  13,  14,  15,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,  20,   0,   0,  29,  33,  30,  31,  32,  19,  37,  39,  38,  36,  35,   0,   0,   8,   7,   9,  10,  11,  28,  41,  42,  43,  44,   6,  16,   5,  12,  34,  13,  14,  15,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,  20,   0,   0,  29,  33,  30,  31,  32,  19,  37,  39,  38,  36,  35,   8,   7,   9,  10,  11,  28,  41,  42,  43,  44,   0,  16,   6,  12,  34,  13,  14,  15,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,  20,   0,   0,  29,  33,  30,  31,  32,  19,  37,  39,  38,  36,  35,  51, 122,  48,   0,  50,  49,   0,   0,   0,   0,   0,   0,   6,   0,   0, 120,  49,   0,  61,  64,  54,  62,  57,  58,  59,  60,  55,  56,  63,  61,  64,  54,  62,  57,  58,  59,  60,  55,  56,  63};short	yypact[] ={ 241,-1000, 288,-1000,  26,-1000, 335,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000, 380, 380, 380, 380, 380,  32, 335, 380, 380, 380, 380,-1000,-1000,  66,-1000,-1000,-1000,  66,-1000,  29,  66,  66,  66,  66,  27,-1000,-1000,-1000,-1000,  26,-1000, 380, 380,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000, 124,  26,  96,  96,  96, -14,-1000,-1000, 183,  96,  96,  96,  96, -53,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000, 335,-1000,  26, -14, 380, 380, 380, 380,-1000, 380, 380,-1000,  10,  91,  53, 288, -56, 408, -14, 397,  26, 408, -14,-1000,-1000,  -1,-1000,-1000, 335, 335,-1000, 380,-1000, 380,-1000,-1000,-1000, 288,  50, -14,  26,-1000};short	yypgo[] ={   0, 122,   6,   0, 117,   2, 116, 114, 111, 110, 109, 108, 106,  98,  93,  92,  91,  89,  87,  75,  73,  65,  51,   4,  47,  35,  16,  30,   1,  28};short	yyr1[] ={   0,   1,   1,   1,   2,   2,   2,   2,   4,   5,   5,   6,   6,   3,   3,   3,   3,   3,   3,   3,   3,   3,   3,   3,   3,   3,   3,   3,   3,   9,   3,  10,   3,  12,   3,  13,   3,   3,  14,   3,  15,   3,   3,   3,   3,   3,   3,   3,   3,   3,  24,   3,  11,  19,  20,  21,  22,  18,  18,  18,  18,  18,  18,  18,  18,  18,  18,  18,  16,  16,  17,  17,  25,  25,  23,  29,  23,  27,  27,  27,  27,  28,  28,   7,   8,   8,   8,   8,  26,  26};short	yyr2[] ={   0,   1,   1,   0,   1,   2,   2,   1,   2,   2,   0,   2,   0,   3,   1,   1,   1,   1,   1,   1,   1,   1,   1,   3,   2,   2,   2,   2,   2,   0,   5,   0,   4,   0,   5,   0,   4,   1,   0,   5,   0,   4,   3,   2,   2,   2,   2,   2,   2,   1,   0,   5,   1,   2,   2,   2,   2,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   2,   2,   2,   2,   1,   2,   4,   0,   6,   1,   1,   1,   1,   1,   3,   2,   1,   1,   1,   2,   1,   1};short	yychk[] ={-1000,  -1,  -2,   2,  -3,  16,  61,   5,   4,   6,   7,   8,  17,  19,  20,  21,  15,  -7,  -8,  43,  35, -11, -16, -19, -20, -21, -22, -23,   9,  38,  40,  41,  42,  39,  18,  48,  47,  44,  46,  45, -27,  10,  11,  12,  13,  -3,  -4,  16,  34,  37,  36,  32,  33, -18,  52,  58,  59,  54,  55,  56,  57,  50,  53,  60,  51,  -2,  -3,  -3,  -3,  -3,  -3,  37,  36,  -2,  -3,  -3,  -3,  -3, -24, -26,   4,   5, -26, -26,  61, -26, -26, -26, -26,  61, -26,  -3,  -3,  -9, -10, -14, -15,  62, -12, -13, -17,  49,  61, -28,  -2, -29,  -3,  -3,  -3,  -3,  -3,  -3, -26,  62, -25, -23,  62,  14,  61,  -5,  36,  -6,  33,  -5,  62, -23,  -2, -28,  -3,  -3,  62};short	yydef[] ={  -2,  -2,   1,   2,   4,   7,   0,  14,  15,  16,  17,  18,  19,  20,  21,  22,   0,   0,   0,   0,   0,  37,   0,   0,   0,   0,   0,  49,  50,   0,  84,  85,  86,   0,  52,   0,   0,   0,   0,   0,   0,  77,  78,  79,  80,   5,   6,   0,   0,  29,  31,  38,  40,  44,  57,  58,  59,  60,  61,  62,  63,  64,  65,  66,  67,   0,  24,  25,  26,  27,  28,  33,  35,  43,  45,  46,  47,  48,   0,  83,  88,  89,  87,  68,  69,  53,  54,  55,  56,   0,  75,   8,  23,   0,   0,   0,   0,  13,   0,   0,  42,   0,   0,   0,  81,   0,  10,  32,  12,  41,  10,  36,  70,  71,   0,  72,  74,   0,   0,  30,   0,  39,   0,  34,  51,  73,  82,   0,   9,  11,  76};short	yytok1[] ={   1,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,  61,   0,  62};short	yytok2[] ={   2,   3,   4,   5,   6,   7,   8,   9,  10,  11,  12,  13,  14,  15,  16,  17,  18,  19,  20,  21,  22,  23,  24,  25,  26,  27,  28,  29,  30,  31,  32,  33,  34,  35,  36,  37,  38,  39,  40,  41,  42,  43,  44,  45,  46,  47,  48,  49,  50,  51,  52,  53,  54,  55,  56,  57,  58,  59,  60};long	yytok3[] ={   0};#define YYFLAG 		-1000#define YYERROR		goto yyerrlab#define YYACCEPT	return(0)#define YYABORT		return(1)#define	yyclearin	yychar = -1#define	yyerrok		yyerrflag = 0#ifdef	yydebug#include	"y.debug"#else#define	yydebug		0char*	yytoknames[1];		/* for debugging */char*	yystates[1];		/* for debugging */#endif/*	parser for yacc output	*/int	yynerrs = 0;		/* number of errors */int	yyerrflag = 0;		/* error recovery flag */char*yytokname(int yyc){	static char x[16];	if(yyc > 0 && yyc <= sizeof(yytoknames)/sizeof(yytoknames[0]))	if(yytoknames[yyc-1])		return yytoknames[yyc-1];	sprintf(x, "<%d>", yyc);	return x;}char*yystatname(int yys){	static char x[16];	if(yys >= 0 && yys < sizeof(yystates)/sizeof(yystates[0]))	if(yystates[yys])		return yystates[yys];	sprintf(x, "<%d>\n", yys);	return x;}longyylex1(void){	long yychar;	long *t3p;	int c;	yychar = yylex();	if(yychar <= 0) {		c = yytok1[0];		goto out;	}	if(yychar < sizeof(yytok1)/sizeof(yytok1[0])) {		c = yytok1[yychar];		goto out;	}	if(yychar >= YYPRIVATE)		if(yychar < YYPRIVATE+sizeof(yytok2)/sizeof(yytok2[0])) {			c = yytok2[yychar-YYPRIVATE];			goto out;		}	for(t3p=yytok3;; t3p+=2) {		c = t3p[0];		if(c == yychar) {			c = t3p[1];			goto out;		}		if(c == 0)			break;	}	c = 0;out:	if(c == 0)		c = yytok2[1];	/* unknown char */	if(yydebug >= 3)		printf("lex %.4lX %s\n", yychar, yytokname(c));	return c;}intyyparse(void){	struct	{		YYSTYPE	yyv;		int	yys;	} yys[YYMAXDEPTH], *yyp, *yypt;	short *yyxi;	int yyj, yym, yystate, yyn, yyg;	YYSTYPE save1, save2;	int save3, save4;	long yychar;	save1 = yylval;	save2 = yyval;	save3 = yynerrs;	save4 = yyerrflag;	yystate = 0;	yychar = -1;	yynerrs = 0;	yyerrflag = 0;	yyp = &yys[-1];	goto yystack;ret0:	yyn = 0;	goto ret;ret1:	yyn = 1;	goto ret;ret:	yylval = save1;	yyval = save2;	yynerrs = save3;	yyerrflag = save4;	return yyn;

⌨️ 快捷键说明

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