📄 coach_lang_par.cc
字号:
} return 2; } yystacksize *= 2; if (yystacksize > YYMAXDEPTH) yystacksize = YYMAXDEPTH;#ifndef YYSTACK_USE_ALLOCA yyfree_stacks = 1;#endif yyss = (short *) YYSTACK_ALLOC (yystacksize * sizeof (*yyssp)); __yy_memcpy ((char *)yyss, (char *)yyss1, size * (unsigned int) sizeof (*yyssp)); yyvs = (YYSTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yyvsp)); __yy_memcpy ((char *)yyvs, (char *)yyvs1, size * (unsigned int) sizeof (*yyvsp));#ifdef YYLSP_NEEDED yyls = (YYLTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yylsp)); __yy_memcpy ((char *)yyls, (char *)yyls1, size * (unsigned int) sizeof (*yylsp));#endif#endif /* no yyoverflow */ yyssp = yyss + size - 1; yyvsp = yyvs + size - 1;#ifdef YYLSP_NEEDED yylsp = yyls + size - 1;#endif#if YYDEBUG != 0 if (yydebug) fprintf(stderr, "Stack size increased to %d\n", yystacksize);#endif if (yyssp >= yyss + yystacksize - 1) YYABORT; }#if YYDEBUG != 0 if (yydebug) fprintf(stderr, "Entering state %d\n", yystate);#endif goto yybackup; yybackup:/* Do appropriate processing given the current state. *//* Read a lookahead token if we need one and don't already have one. *//* yyresume: */ /* First try to decide what to do without reference to lookahead token. */ yyn = yypact[yystate]; if (yyn == YYFLAG) goto yydefault; /* Not known => get a lookahead token if don't already have one. */ /* yychar is either YYEMPTY or YYEOF or a valid token in external form. */ if (yychar == YYEMPTY) {#if YYDEBUG != 0 if (yydebug) fprintf(stderr, "Reading a token: ");#endif yychar = YYLEX; } /* Convert token to internal form (in yychar1) for indexing tables with */ if (yychar <= 0) /* This means end of input. */ { yychar1 = 0; yychar = YYEOF; /* Don't call YYLEX any more */#if YYDEBUG != 0 if (yydebug) fprintf(stderr, "Now at end of input.\n");#endif } else { yychar1 = YYTRANSLATE(yychar);#if YYDEBUG != 0 if (yydebug) { fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]); /* Give the individual parser a way to print the precise meaning of a token, for further debugging info. */#ifdef YYPRINT YYPRINT (stderr, yychar, yylval);#endif fprintf (stderr, ")\n"); }#endif } yyn += yychar1; if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1) goto yydefault; yyn = yytable[yyn]; /* yyn is what to do for this token type in this state. Negative => reduce, -yyn is rule number. Positive => shift, yyn is new state. New state is final state => don't bother to shift, just return success. 0, or most negative number => error. */ if (yyn < 0) { if (yyn == YYFLAG) goto yyerrlab; yyn = -yyn; goto yyreduce; } else if (yyn == 0) goto yyerrlab; if (yyn == YYFINAL) YYACCEPT; /* Shift the lookahead token. */#if YYDEBUG != 0 if (yydebug) fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);#endif /* Discard the token being shifted unless it is eof. */ if (yychar != YYEOF) yychar = YYEMPTY; *++yyvsp = yylval;#ifdef YYLSP_NEEDED *++yylsp = yylloc;#endif /* count tokens shifted since error; after three, turn off error status. */ if (yyerrstatus) yyerrstatus--; yystate = yyn; goto yynewstate;/* Do the default action for the current state. */yydefault: yyn = yydefact[yystate]; if (yyn == 0) goto yyerrlab;/* Do a reduction. yyn is the number of a rule to reduce with. */yyreduce: yylen = yyr2[yyn]; if (yylen > 0) yyval = yyvsp[1-yylen]; /* implement default value of the action */#if YYDEBUG != 0 if (yydebug) { int i; fprintf (stderr, "Reducing via rule %d (line %d), ", yyn, yyrline[yyn]); /* Print the symbols being reduced, and their result. */ for (i = yyprhs[yyn]; yyrhs[i] > 0; i++) fprintf (stderr, "%s ", yytname[yyrhs[i]]); fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]); }#endif switch (yyn) {case 3:#line 238 "coach_lang_par.yy"{ yyval = yyvsp[-2]; BUILDER.setTime( yyvsp[-4].getInt() ); BUILDER.setSide( yyvsp[-3].getInt() ); BUILDER.setTimeRecv( yyvsp[-2].getInt() ); ; break;}case 12:#line 257 "coach_lang_par.yy"{ BUILDER.buildRuleMsg(); BUILDER.setVer( 8 ); ; break;}case 13:#line 261 "coach_lang_par.yy"{; break;}case 14:#line 262 "coach_lang_par.yy"{; break;}case 15:#line 266 "coach_lang_par.yy"{ BUILDER.buildActivateRules( yyvsp[-2].getBool() ); ; break;}case 16:#line 270 "coach_lang_par.yy"{ BUILDER.buildRuleID( yyvsp[0].getStr() ); BUILDER.buildRuleIDList(); ; break;}case 17:#line 273 "coach_lang_par.yy"{ BUILDER.buildRuleIDList(); ; break;}case 18:#line 275 "coach_lang_par.yy"{ BUILDER.buildRuleIDListALL(); ; break;}case 19:#line 279 "coach_lang_par.yy"{ BUILDER.buildRuleID( yyvsp[0].getStr() ); ; break;}case 20:#line 281 "coach_lang_par.yy"{ BUILDER.buildRuleID( yyvsp[0].getStr() ); ; break;}case 21:#line 285 "coach_lang_par.yy"{ BUILDER.buildDelMsg(); BUILDER.setVer( 8 ); ; break;}case 22:#line 290 "coach_lang_par.yy"{ BUILDER.buildMetaMsg(); BUILDER.setVer( 7 ); ; break;}case 25:#line 298 "coach_lang_par.yy"{ BUILDER.buildMetaTokenVer( yyvsp[-1].getDoub() ); ; break;}case 26:#line 303 "coach_lang_par.yy"{ BUILDER.buildDefineMsg(); BUILDER.setVer( 8, 7 ); ; break;}case 29:#line 313 "coach_lang_par.yy"{ BUILDER.buildDefineCond( rcss::stripQuotes( yyvsp[-2].getStr() ) ); ; break;}case 30:#line 316 "coach_lang_par.yy"{ BUILDER.buildDefineDir( rcss::stripQuotes( yyvsp[-2].getStr() ) ); ; break;}case 31:#line 319 "coach_lang_par.yy"{ BUILDER.buildDefineReg( rcss::stripQuotes( yyvsp[-2].getStr() ) ); ; break;}case 32:#line 322 "coach_lang_par.yy"{ BUILDER.buildDefineAct( rcss::stripQuotes( yyvsp[-2].getStr() ) ); ; break;}case 33:#line 324 "coach_lang_par.yy"{ BUILDER.setVer( 8 ); ; break;}case 34:#line 328 "coach_lang_par.yy"{ BUILDER.buildDefineModelRule( yyvsp[-2].getStr() ); ; break;}case 35:#line 330 "coach_lang_par.yy"{ BUILDER.buildDefineDirectiveRule( yyvsp[-2].getStr() ); ; break;}case 36:#line 334 "coach_lang_par.yy"{ BUILDER.buildSimpleRule(); ; break;}case 37:#line 336 "coach_lang_par.yy"{ BUILDER.buildNestedRule(); ; break;}case 38:#line 338 "coach_lang_par.yy"{ BUILDER.buildIDRule(); ; break;}case 41:#line 347 "coach_lang_par.yy"{ std::string str = rcss::stripQuotes( yyvsp[-1].getStr() ); if( (int)str.length() > ServerParam::instance().SayCoachMsgSize ) YYERROR; else { BUILDER.buildFreeformMsg( str ); BUILDER.setVer( 8, 7 ); } ; break;}case 42:#line 361 "coach_lang_par.yy"{ BUILDER.buildUnsuppMsg(); BUILDER.setVer( 8, 7 ); ; break;}case 43:#line 369 "coach_lang_par.yy"{ BUILDER.buildInfoMsg(); BUILDER.setVer( 7 ); ; break;}case 44:#line 375 "coach_lang_par.yy"{ BUILDER.buildAdviceMsg(); BUILDER.setVer( 7 ); ; break;}case 45:#line 381 "coach_lang_par.yy"{ BUILDER.buildTokenRule( yyvsp[-3].getInt() ); ; break;}case 46:#line 383 "coach_lang_par.yy"{ BUILDER.buildTokenClear(); ; break;}case 49:#line 392 "coach_lang_par.yy"{ BUILDER.buildActPos(); ; break;}case 50:#line 395 "coach_lang_par.yy"{ BUILDER.buildActHome(); ; break;}case 51:#line 398 "coach_lang_par.yy"{ BUILDER.buildActBallToReg(); ; break;}case 52:#line 401 "coach_lang_par.yy"{ BUILDER.buildActBallToPlayer(); ; break;}case 53:#line 404 "coach_lang_par.yy"{ BUILDER.buildActMark(); ; break;}case 54:#line 407 "coach_lang_par.yy"{ BUILDER.buildActMarkLinePlayer(); ; break;}case 55:#line 410 "coach_lang_par.yy"{ BUILDER.buildActMarkLineReg(); ; break;}case 56:#line 413 "coach_lang_par.yy"{ BUILDER.buildActOffsideLine(); ; break;}case 57:#line 415 "coach_lang_par.yy"{ BUILDER.buildActHetType( yyvsp[-1].getInt() ); ; break;}case 58:#line 417 "coach_lang_par.yy"{ BUILDER.buildActNamed( rcss::stripQuotes( yyvsp[0].getStr() ) ); ; break;}case 59:#line 420 "coach_lang_par.yy"{ BUILDER.buildActPassReg(); BUILDER.setVer( 8 ); ; break;}case 60:#line 424 "coach_lang_par.yy"{ BUILDER.buildActPassUNum(); BUILDER.setVer( 8 ); ; break;}case 61:#line 428 "coach_lang_par.yy"{ BUILDER.buildActDribble(); BUILDER.setVer( 8 ); ; break;}case 62:#line 432 "coach_lang_par.yy"{ BUILDER.buildActClear(); BUILDER.setVer( 8 ); ; break;}case 63:#line 435 "coach_lang_par.yy"{ BUILDER.buildActShoot(); BUILDER.setVer( 8 ); ; break;}case 64:#line 438 "coach_lang_par.yy"{ BUILDER.buildActHold(); BUILDER.setVer( 8 ); ; break;}case 65:#line 441 "coach_lang_par.yy"{ BUILDER.buildActIntercept(); BUILDER.setVer( 8 ); ; break;}case 66:#line 445 "coach_lang_par.yy"{ BUILDER.buildActTackle(); BUILDER.setVer( 8 ); ; break;}case 67:#line 451 "coach_lang_par.yy"{ BUILDER.buildDirComm( yyvsp[-4].getBool(), yyvsp[-3].getBool() ); ; break;}case 68:#line 454 "coach_lang_par.yy"{ BUILDER.buildDirNamed( rcss::stripQuotes( yyvsp[0].getStr() ) ); ; break;}case 69:#line 457 "coach_lang_par.yy"{; break;}case 70:#line 458 "coach_lang_par.yy"{; break;}case 73:#line 466 "coach_lang_par.yy"{ BUILDER.buildCondTrue(); ; break;}case 74:#line 468 "coach_lang_par.yy"{ BUILDER.buildCondFalse(); ; break;}case 75:#line 471 "coach_lang_par.yy"{ BUILDER.buildCondPlayerPos( yyvsp[-5].getBool(), yyvsp[-3].getInt(), yyvsp[-2].getInt() ); ; break;}case 76:#line 476 "coach_lang_par.yy"{ BUILDER.buildCondBallPos(); ; break;}case 77:#line 479 "coach_lang_par.yy"{ BUILDER.buildCondBallOwner( yyvsp[-2].getBool() ); ; break;}case 78:#line 482 "coach_lang_par.yy"{ BUILDER.buildCondPlayMode( yyvsp[-1].getPM() ); ; break;}case 79:#line 485 "coach_lang_par.yy"{ BUILDER.buildCondAnd(); ; break;}case 80:#line 488 "coach_lang_par.yy"{ BUILDER.buildCondOr(); ; break;}case 81:#line 491 "coach_lang_par.yy"{ BUILDER.buildCondNot(); ; break;}case 82:#line 493 "coach_lang_par.yy"{ BUILDER.buildCondNamed( rcss::stripQuotes( yyvsp[0].getStr() ) ); ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -