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

📄 coach_lang_par.cc

📁 在LINUX下运行的仿真机器人服务器源代码
💻 CC
📖 第 1 页 / 共 4 页
字号:
	    }	  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 + -