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

📄 y.tab.c

📁 sco unix 前台界面开发程序,采用UNIX中的词法分析器和语法分析器
💻 C
📖 第 1 页 / 共 3 页
字号:
					*( yy_ps -= yy_len ) + 1;				if ( yy_state >= YYLAST ||					yychk[ yy_state =					yyact[ yy_state ] ] != -yy_n )				{					yy_state = yyact[ yypgo[ yy_n ] ];				}				goto yy_stack;			}			yy_len >>= 1;			yyval = ( yy_pv -= yy_len )[1];	/* $$ = $1 */			yy_state = yypgo[ yy_n = yyr1[ yy_n ] ] +				*( yy_ps -= yy_len ) + 1;			if ( yy_state >= YYLAST ||				yychk[ yy_state = yyact[ yy_state ] ] != -yy_n )			{				yy_state = yyact[ yypgo[ yy_n ] ];			}		}					/* save until reenter driver code */		yystate = yy_state;		yyps = yy_ps;		yypv = yy_pv;	}	/*	** code supplied by user is placed in this switch	*/	switch( yytmp )	{		case 2:# line 57 "myform.y"{        	int i;        	NO = -1;			LINENO = 1;			HFORM=InitForm();        } break;case 5:# line 69 "myform.y"{			LINENO++;			HFORM->row = ROW;			HFORM->col = COL;		} break;case 6:# line 75 "myform.y"{			LINENO++;			HFORM->rows =ROWS;			HFORM->cols =COLS;		} break;case 7:# line 81 "myform.y"{			LINENO++;			HFORM->name = (char *) calloc(strlen(BUF)+1, sizeof(char));        	strcpy(HFORM->name, BUF);		} break;case 8:# line 87 "myform.y"{			LINENO++;			HFORM->prompt = (char *) calloc(strlen(BUF)+1, sizeof(char));        	strcpy(HFORM->prompt, BUF);        } break;case 11:# line 97 "myform.y"{        	int rows, cols;        	WINDOW *win;        	LINENO++;        	NO++;        	HFORM->fields[NO] = (FIELD *)0;			HFORM->form = new_form(HFORM->fields);    		scale_form(HFORM->form,&rows,&cols);    		if(rows < HFORM->rows) rows = HFORM->rows;    		if(cols < HFORM->cols) cols = HFORM->cols;    		if(!(win = newwin(rows + 2, cols + 2, HFORM->row, HFORM->col))) {				fprintf(stderr,"%s|%d|建立窗口失败!",__FILE__,__LINE__);				return(-1);			}			if((HFORM->panel = new_panel(win)) == NULL) { //窗口与屏面关联				fprintf(stderr,"%s|%d|建立窗口屏幕失败!",__FILE__,__LINE__);				return(-1);			}			set_form_win(HFORM->form, win);			set_form_sub(HFORM->form, derwin(win, rows, cols, 1, 1));			box(win, 0 , 0);			mvwaddstr(win, 0, (cols + 2 - strlen(HFORM->name)) / 2				, HFORM->name);			keypad(win, 1);			post_form(HFORM->form);			update_panels();//更新屏幕			doupdate();//刷新} break;case 14:# line 131 "myform.y"{       	LINENO++;      	NO++;      } break;case 15:# line 136 "myform.y"{      	LINENO++;      } break;case 16:# line 140 "myform.y"{      	LINENO++;      } break;case 17:# line 146 "myform.y"{      		LINENO++;      	    HFORM->fields[NO] = new_field(1, strlen(BUF), ROW, COL, 0, 0);      		set_field_buffer(HFORM->fields[NO], 0, BUF);            field_opts_off(HFORM->fields[NO], O_ACTIVE);      	} break;case 18:# line 154 "myform.y"{      	NO++;      	LINENO++;      } break;case 19:# line 159 "myform.y"{      	LINENO++;      } break;case 20:# line 163 "myform.y"{      	LINENO++;      	HFORM->fields[NO] = new_field(ROWS, COLS, ROW, COL, 0, NBUF);        set_field_back(HFORM->fields[NO], A_UNDERLINE);        field_opts_off(HFORM->fields[NO], O_NULLOK|O_PASSOK|O_AUTOSKIP);      } break;case 21:# line 170 "myform.y"{      	LINENO++;      	set_field_buffer(HFORM->fields[NO], VALBUF, BUF);      } break;case 22:# line 175 "myform.y"{      	LINENO++;      	HFORM->index[NO]=INDEX;      } break;case 23:# line 180 "myform.y"{      	LINENO++;      	HFORM->init[NO] = (char *) calloc(strlen(BUF)+1, sizeof(char));        strcpy(HFORM->init[NO], BUF);      } break;case 24:# line 186 "myform.y"{	  	LINENO++;	  	HFORM->term[NO] = (char *) calloc(strlen(BUF)+1, sizeof(char));        strcpy(HFORM->term[NO], BUF);	  } break;case 25:# line 192 "myform.y"{	  	LINENO++;	  	HFORM->disp[NO] = (char *) calloc(strlen(BUF)+1, sizeof(char));        strcpy(HFORM->disp[NO], BUF);	  } break;case 26:# line 198 "myform.y"{	  	LINENO++;	  	HFORM->fields[NO]->usrptr	  		= (char *) calloc(strlen(BUF)+1, sizeof(char));	  	strcpy(HFORM->fields[NO]->usrptr, BUF);	  } break;case 27:# line 205 "myform.y"{	  	LINENO++;	  } break;case 28:# line 209 "myform.y"{          LINENO++;            set_field_fore(HFORM->fields[NO], yypvt[-0].chval);      } break;case 29:# line 214 "myform.y"{          LINENO++;            set_field_back(HFORM->fields[NO], yypvt[-0].chval);      } break;case 30:# line 219 "myform.y"{        LINENO++;        field_opts_on(HFORM->fields[NO], yypvt[-0].opval);      } break;case 31:# line 224 "myform.y"{        LINENO++;        field_opts_off(HFORM->fields[NO], yypvt[-0].opval);      } break;case 32:# line 229 "myform.y"{        LINENO++;        set_field_just(HFORM->fields[NO], yypvt[-0].ival);      } break;case 33:# line 234 "myform.y"{        LINENO++;      } break;case 34:# line 239 "myform.y"{      		LINENO++;         } break;case 35:# line 244 "myform.y"{            strcpy(BUF, yypvt[-0].sval);         } break;case 36:# line 249 "myform.y"{            strcpy(BUF, yypvt[-0].sval);         } break;case 37:# line 254 "myform.y"{            ROW = yypvt[-2].ival; COL = yypvt[-0].ival;         } break;case 38:# line 259 "myform.y"{            ROWS = yypvt[-2].ival; COLS = yypvt[-0].ival;         } break;case 39:# line 264 "myform.y"{        	  strcpy(BUF, yypvt[-0].sval);       } break;case 40:# line 269 "myform.y"{          strcpy(BUF, yypvt[-0].sval);       } break;case 41:# line 274 "myform.y"{          strcpy(BUF, yypvt[-0].sval);       } break;case 42:# line 279 "myform.y"{			strcpy(BUF, yypvt[-0].sval);		} break;case 43:# line 284 "myform.y"{      	INDEX = yypvt[-0].ival;      } break;case 45:# line 291 "myform.y"{	 	set_field_type(HFORM->fields[NO], TYPE_TEXT);	 } break;case 46:# line 295 "myform.y"{		set_field_type(HFORM->fields[NO], TYPE_CTEXT);	 } break;case 47:# line 299 "myform.y"{		set_field_type(HFORM->fields[NO], TYPE_ETEXT);	 } break;case 48:# line 303 "myform.y"{		set_field_type(HFORM->fields[NO], TYPE_DATE);	 } break;case 49:# line 307 "myform.y"{		set_field_type(HFORM->fields[NO], TYPE_DIGIT);	 } break;case 50:# line 311 "myform.y"{	 	set_field_type(HFORM->fields[NO], TYPE_ALPHA, yypvt[-0].ival);	 } break;case 51:# line 315 "myform.y"{        set_field_type(HFORM->fields[NO], TYPE_INTEGER, yypvt[-4].ival, yypvt[-2].ival, yypvt[-0].ival);     } break;case 52:# line 319 "myform.y"{        set_field_type(HFORM->fields[NO], TYPE_NUMERIC, yypvt[-4].ival, yypvt[-2].dval, yypvt[-0].dval);     } break;case 53:# line 323 "myform.y"{	 	set_field_type(HFORM->fields[NO], TYPE_AMOUNT, yypvt[-4].ival, yypvt[-2].dval, yypvt[-0].dval);	 } break;case 54:# line 327 "myform.y"{	 	set_field_type(HFORM->fields[NO], TYPE_LIST, yypvt[-4].ival, yypvt[-2].ival, yypvt[-0].sval);	 } break;case 55:# line 331 "myform.y"{        yyval.chval=yypvt[-0].chval;     } break;case 56:# line 336 "myform.y"{        yyval.chval=yypvt[-0].chval;     } break;case 57:# line 341 "myform.y"{ yyval.chval=yypvt[-0].chval; } break;case 58:# line 343 "myform.y"{ yyval.chval=yypvt[-2].chval|yypvt[-0].chval; } break;case 59:# line 345 "myform.y"{ yyval.chval=yypvt[-2].chval&yypvt[-0].chval; } break;case 60:# line 347 "myform.y"{ yyval.chval=~yypvt[-0].chval; } break;case 61:# line 350 "myform.y"{ yyval.chval=A_BLINK; } break;case 62:# line 352 "myform.y"{ yyval.chval=A_BOLD; } break;case 63:# line 354 "myform.y"{ yyval.chval=A_DIM; } break;case 64:# line 356 "myform.y"{ yyval.chval=A_REVERSE; } break;case 65:# line 358 "myform.y"{ yyval.chval=A_STANDOUT; } break;case 66:# line 360 "myform.y"{ yyval.chval=A_UNDERLINE; } break;case 67:# line 362 "myform.y"{ yyval.chval=A_ALTCHARSET; } break;case 68:# line 364 "myform.y"{ yyval.chval=A_NORMAL; } break;case 69:# line 367 "myform.y"{ yyval.opval = yypvt[-0].opval; } break;case 70:# line 370 "myform.y"{ yyval.opval=yypvt[-0].opval; } break;case 71:# line 373 "myform.y"{ yyval.opval = yypvt[-0].opval; } break;case 72:# line 375 "myform.y"{ yyval.opval = yypvt[-2].opval|yypvt[-0].opval; } break;case 73:# line 378 "myform.y"{ yyval.opval=O_VISIBLE; } break;case 74:# line 380 "myform.y"{ yyval.opval=O_ACTIVE; } break;case 75:# line 382 "myform.y"{ yyval.opval=O_PUBLIC; } break;case 76:# line 384 "myform.y"{ yyval.opval=O_EDIT; } break;case 77:# line 386 "myform.y"{ yyval.opval=O_WRAP; } break;case 78:# line 388 "myform.y"{ yyval.opval=O_BLANK; } break;case 79:# line 390 "myform.y"{ yyval.opval=O_AUTOSKIP; } break;case 80:# line 392 "myform.y"{ yyval.opval=O_NULLOK; } break;case 81:# line 394 "myform.y"{ yyval.opval=O_PASSOK; } break;case 82:# line 396 "myform.y"{ yyval.opval=O_STATIC; } break;case 83:# line 399 "myform.y"{ yyval.ival=yypvt[-0].ival; } break;case 84:# line 402 "myform.y"{ yyval.ival=NO_JUSTIFICATION; } break;case 85:# line 404 "myform.y"{ yyval.ival=JUSTIFY_LEFT; } break;case 86:# line 406 "myform.y"{ yyval.ival=JUSTIFY_RIGHT; } break;case 87:# line 408 "myform.y"{ yyval.ival=JUSTIFY_CENTER; } break;case 88:# line 411 "myform.y"{         set_new_page(HFORM->fields[NO], 1);       } break;	}	goto yystack;		/* reset registers in driver code */}#undef YYCONST#if defined(__cplusplus) && ! defined(YACC_HAS_CPLUS_LINKAGE)}#endif/* * In SCO C++, crt1.o calls _main() (in libC.a) which calls main(). * If we define a main() in liby.a, it will not get extracted, since * liby.a appears before libC.a on the link line.  To get around this * the linker must know we need main() when it is processing liby.a * So, we have a dummy call right here.*/#if defined(__cplusplus)extern "C" int main(void);void _yydumMain_() { main(); }#endif#include "lex.yy.c" 

⌨️ 快捷键说明

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