📄 parser.cpp
字号:
16, 17, 18, 19, 20, 0, 21, 1, 0, 2,
3, 0, 4, 5, 6, 7, 0, 0, 0, 171,
8, 9, 10, 11, 12, 13, 14, 22, 15, 16,
17, 18, 19, 20, 23, 21, 68, 69, 70, 24,
25, 75, 26, 72, -53, 73, 0, -53, -53, 0,
-53, -53, -53, 0, 0, -53, 22, -53, 0, -53,
0, 0, 0, 23, 0, 0, 0, 0, 24, 25,
1, 26, 2, 3, 0, 4, 5, 6, 7, 0,
0, 0, 180, 8, 9, 10, 11, 12, 13, 14,
0, 15, 16, 17, 18, 19, 20, 0, 21, 1,
0, 2, 3, 0, 4, 5, 6, 7, 0, 0,
0, 184, 8, 9, 10, 11, 12, 13, 14, 22,
15, 16, 17, 18, 19, 20, 23, 21,-32768, 69,
70, 24, 25, 75, 26, 72, -56, 73, 0, -56,
-56, 0, -56, -56, -56, 0, 0, -56, 22, -56,
0, -56, 0, 0, 0, 23, 0, 0, 0, 0,
24, 25, 1, 26, 2, 3, 0, 4, 5, 6,
7, 0, 0, 0, 186, 8, 9, 10, 11, 12,
13, 14, 0, 15, 16, 17, 18, 19, 20, 0,
21, 1, 0, 2, 3, 0, 4, 5, 6, 7,
0, 0, 0, 188, 8, 9, 10, 11, 12, 13,
14, 22, 15, 16, 17, 18, 19, 20, 23, 21,
0, 0, 0, 24, 25, 0, 26, 0, 0, 65,
66, 67, 68, 69, 70, 0, 0, 75, 0, 72,
22, 73, 141, 0, 0, 0, 0, 23, 0, 0,
0, 0, 24, 25, 1, 26, 2, 3, 0, 4,
5, 6, 7, 0, 0, 0, 193, 8, 9, 10,
11, 12, 13, 14, 0, 15, 16, 17, 18, 19,
20, 0, 21, 1, 0, 2, 3, 0, 4, 5,
6, 7, 0, 0, 0, 0, 8, 9, 10, 11,
12, 13, 14, 22, 15, 16, 17, 18, 19, 20,
23, 21, 0, 0, 0, 24, 25, 37, 26, 4,
5, 6, 0, 65, 66, 67, 68, 69, 70, 0,
0, 75, 22, 72, 140, 73, 0, 17, 0, 23,
0, 0, 0, 0, 24, 25, 0, 26, 0, 65,
66, 67, 68, 69, 70, 0, 40, 75, 0, 72,
0, 73, 0, 22, 0, 0, 0, 0, 0, 0,
23, 0, 0, 0, 0, 41, 82, 83, 84, 85,
86, 0, 0, 87, 0, 0, 65, 66, 67, 68,
69, 70, 0, 0, 75, 0, 72, 0, 73, 0,
0, 0, 99, 82, 83, 84, 85, 86, 0, 0,
87, 0, 0, 65, 66, 67, 68, 69, 70, 0,
0, 75, 0, 72, 0, 73, 66, 67, 68, 69,
70, 0, 0, 75, 0, 72, 0, 73
};
static const short yycheck[] = { 2,
124, 68, 32, 70, 7, 8, 9, 66, 11, 29,
11, 66, 15, 39, 40, 18, 19, 8, 21, 22,
14, 24, 52, 53, 54, 55, 56, 57, 74, 14,
60, 60, 62, 62, 64, 64, 39, 40, 41, 40,
41, 8, 68, 8, 9, 39, 40, 8, 69, 66,
8, 175, 98, 49, 39, 40, 8, 47, 10, 11,
12, 64, 65, 66, 67, 68, 69, 70, 66, 72,
73, 74, 92, 49, 66, 70, 28, 8, 8, 82,
83, 84, 85, 86, 87, 68, 89, 90, 89, 90,
93, 70, 95, 139, 97, 98, 8, 143, 88, 68,
49, 40, 54, 66, 124, 13, 55, 56, 57, 61,
113, 60, 66, 62, 66, 64, 21, 70, 68, 8,
123, 68, 123, 68, 68, 145, 129, 13, 20, 149,
24, 121, 27, 20, 24, 0, 139, 157, 128, 24,
143, 20, 0, 23, -1, 96, -1, 137, 168, 152,
-1, -1, 155, 156, -1, 175, -1, 177, -1, 179,
-1, 181, 165, -1, 154, -1, -1, -1, -1, -1,
190, -1, 162, -1, 164, 5, 166, 7, 8, 169,
10, 11, 12, 13, -1, -1, -1, -1, 18, 19,
20, 21, 22, 23, 24, 185, 26, 27, 28, 29,
30, 31, -1, 33, -1, -1, 49, -1, 38, 52,
53, 54, 55, 56, 57, -1, -1, 60, -1, 62,
-1, 64, 52, 53, 54, 55, 56, 57, -1, -1,
60, 61, 62, -1, 64, -1, 66, 67, 5, 69,
7, 8, 25, 10, 11, 12, 13, -1, -1, -1,
-1, 18, 19, 20, 21, 22, 23, 24, -1, 26,
27, 28, 29, 30, 31, -1, 33, -1, -1, 52,
53, 54, 55, 56, 57, -1, -1, 60, -1, 62,
-1, 64, -1, -1, -1, 52, 53, 54, 55, 56,
57, -1, -1, 60, 61, 62, -1, 64, -1, 66,
67, 5, 69, 7, 8, -1, 10, 11, 12, 13,
-1, 15, -1, 17, 18, 19, 20, 21, 22, 23,
24, -1, 26, 27, 28, 29, 30, 31, -1, 33,
-1, -1, -1, 37, -1, -1, 52, 53, 54, 55,
56, 57, -1, -1, 60, -1, 62, -1, 64, -1,
54, -1, 68, 5, 70, 7, 8, 61, 10, 11,
12, 13, 66, 67, -1, 69, 18, 19, 20, 21,
22, 23, 24, -1, 26, 27, 28, 29, 30, 31,
-1, 33, -1, -1, -1, -1, -1, 39, 40, 52,
53, 54, 55, 56, 57, -1, -1, 60, -1, 62,
-1, 64, 54, -1, -1, 68, -1, -1, -1, 61,
-1, -1, -1, -1, 66, 67, 5, 69, 7, 8,
-1, 10, 11, 12, 13, -1, -1, -1, 17, 18,
19, 20, 21, 22, 23, 24, -1, 26, 27, 28,
29, 30, 31, -1, 33, 5, -1, 7, 8, -1,
10, 11, 12, 13, -1, -1, -1, 17, 18, 19,
20, 21, 22, 23, 24, 54, 26, 27, 28, 29,
30, 31, 61, 33, -1, -1, -1, 66, 67, -1,
69, 52, 53, 54, 55, 56, 57, -1, -1, 60,
-1, 62, -1, 64, 54, -1, -1, 68, -1, -1,
-1, 61, -1, -1, -1, -1, 66, 67, 5, 69,
7, 8, -1, 10, 11, 12, 13, -1, -1, -1,
17, 18, 19, 20, 21, 22, 23, 24, -1, 26,
27, 28, 29, 30, 31, -1, 33, 5, -1, 7,
8, -1, 10, 11, 12, 13, -1, -1, -1, 17,
18, 19, 20, 21, 22, 23, 24, 54, 26, 27,
28, 29, 30, 31, 61, 33, 55, 56, 57, 66,
67, 60, 69, 62, 49, 64, -1, 52, 53, -1,
55, 56, 57, -1, -1, 60, 54, 62, -1, 64,
-1, -1, -1, 61, -1, -1, -1, -1, 66, 67,
5, 69, 7, 8, -1, 10, 11, 12, 13, -1,
-1, -1, 17, 18, 19, 20, 21, 22, 23, 24,
-1, 26, 27, 28, 29, 30, 31, -1, 33, 5,
-1, 7, 8, -1, 10, 11, 12, 13, -1, -1,
-1, 17, 18, 19, 20, 21, 22, 23, 24, 54,
26, 27, 28, 29, 30, 31, 61, 33, 55, 56,
57, 66, 67, 60, 69, 62, 49, 64, -1, 52,
53, -1, 55, 56, 57, -1, -1, 60, 54, 62,
-1, 64, -1, -1, -1, 61, -1, -1, -1, -1,
66, 67, 5, 69, 7, 8, -1, 10, 11, 12,
13, -1, -1, -1, 17, 18, 19, 20, 21, 22,
23, 24, -1, 26, 27, 28, 29, 30, 31, -1,
33, 5, -1, 7, 8, -1, 10, 11, 12, 13,
-1, -1, -1, 17, 18, 19, 20, 21, 22, 23,
24, 54, 26, 27, 28, 29, 30, 31, 61, 33,
-1, -1, -1, 66, 67, -1, 69, -1, -1, 52,
53, 54, 55, 56, 57, -1, -1, 60, -1, 62,
54, 64, 65, -1, -1, -1, -1, 61, -1, -1,
-1, -1, 66, 67, 5, 69, 7, 8, -1, 10,
11, 12, 13, -1, -1, -1, 17, 18, 19, 20,
21, 22, 23, 24, -1, 26, 27, 28, 29, 30,
31, -1, 33, 5, -1, 7, 8, -1, 10, 11,
12, 13, -1, -1, -1, -1, 18, 19, 20, 21,
22, 23, 24, 54, 26, 27, 28, 29, 30, 31,
61, 33, -1, -1, -1, 66, 67, 8, 69, 10,
11, 12, -1, 52, 53, 54, 55, 56, 57, -1,
-1, 60, 54, 62, 63, 64, -1, 28, -1, 61,
-1, -1, -1, -1, 66, 67, -1, 69, -1, 52,
53, 54, 55, 56, 57, -1, 47, 60, -1, 62,
-1, 64, -1, 54, -1, -1, -1, -1, -1, -1,
61, -1, -1, -1, -1, 66, 42, 43, 44, 45,
46, -1, -1, 49, -1, -1, 52, 53, 54, 55,
56, 57, -1, -1, 60, -1, 62, -1, 64, -1,
-1, -1, 68, 42, 43, 44, 45, 46, -1, -1,
49, -1, -1, 52, 53, 54, 55, 56, 57, -1,
-1, 60, -1, 62, -1, 64, 53, 54, 55, 56,
57, -1, -1, 60, -1, 62, -1, 64
};
#define YYPURE 1
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
/* This file comes from bison-1.28. */
/* Skeleton output parser for bison,
Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* As a special exception, when this file is copied by Bison into a
Bison output file, you may use that output file without restriction.
This special exception was added by the Free Software Foundation
in version 1.24 of Bison. */
/* This is the parser code that is written into each bison parser
when the %semantic_parser declaration is not specified in the grammar.
It was written by Richard Stallman by simplifying the hairy parser
used when %semantic_parser is specified. */
#ifndef YYSTACK_USE_ALLOCA
#ifdef alloca
#define YYSTACK_USE_ALLOCA
#else /* alloca not defined */
#ifdef __GNUC__
#define YYSTACK_USE_ALLOCA
#define alloca __builtin_alloca
#else /* not GNU C. */
#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386))
#define YYSTACK_USE_ALLOCA
#include <alloca.h>
#else /* not sparc */
/* We think this test detects Watcom and Microsoft C. */
/* This used to test MSDOS, but that is a bad idea
since that symbol is in the user namespace. */
#if (defined (_MSDOS) || defined (_MSDOS_)) && !defined (__TURBOC__)
#if 0 /* No need for malloc.h, which pollutes the namespace;
instead, just don't use alloca. */
#include <malloc.h>
#endif
#else /* not MSDOS, or __TURBOC__ */
#if defined(_AIX)
/* I don't know what this was needed for, but it pollutes the namespace.
So I turned it off. rms, 2 May 1997. */
/* #include <malloc.h> */
#pragma alloca
#define YYSTACK_USE_ALLOCA
#else /* not MSDOS, or __TURBOC__, or _AIX */
#if 0
#ifdef __hpux /* haible@ilog.fr says this works for HPUX 9.05 and up,
and on HPUX 10. Eventually we can turn this on. */
#define YYSTACK_USE_ALLOCA
#define alloca __builtin_alloca
#endif /* __hpux */
#endif
#endif /* not _AIX */
#endif /* not MSDOS, or __TURBOC__ */
#endif /* not sparc */
#endif /* not GNU C */
#endif /* alloca not defined */
#endif /* YYSTACK_USE_ALLOCA not defined */
#ifdef YYSTACK_USE_ALLOCA
#define YYSTACK_ALLOC alloca
#else
#define YYSTACK_ALLOC malloc
#endif
/* Note: there must be only one dollar sign in this file.
It is replaced by the list of actions, each action
as one case of the switch. */
#define yyerrok (yyerrstatus = 0)
#define yyclearin (yychar = YYEMPTY)
#define YYEMPTY -2
#define YYEOF 0
#define YYACCEPT goto yyacceptlab
#define YYABORT goto yyabortlab
#define YYERROR goto yyerrlab1
/* Like YYERROR except do call yyerror.
This remains here temporarily to ease the
transition to the new meaning of YYERROR, for GCC.
Once GCC version 2 has supplanted version 1, this can go. */
#define YYFAIL goto yyerrlab
#define YYRECOVERING() (!!yyerrstatus)
#define YYBACKUP(token, value) \
do \
if (yychar == YYEMPTY && yylen == 1) \
{ yychar = (token), yylval = (value); \
yychar1 = YYTRANSLATE (yychar); \
YYPOPSTACK; \
goto yybackup; \
} \
else \
{ yyerror ("syntax error: cannot back up"); YYERROR; } \
while (0)
#define YYTERROR 1
#define YYERRCODE 256
#ifndef YYPURE
#define YYLEX yylex()
#endif
#ifdef YYPURE
#ifdef YYLSP_NEEDED
#ifdef YYLEX_PARAM
#define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM)
#else
#define YYLEX yylex(&yylval, &yylloc)
#endif
#else /* not YYLSP_NEEDED */
#ifdef YYLEX_PARAM
#define YYLEX yylex(&yylval, YYLEX_PARAM)
#else
#define YYLEX yylex(&yylval)
#endif
#endif /* not YYLSP_NEEDED */
#endif
/* If nonreentrant, generate the variables here */
#ifndef YYPURE
int yychar; /* the lookahead symbol */
YYSTYPE yylval; /* the semantic value of the */
/* lookahead symbol */
#ifdef YYLSP_NEEDED
YYLTYPE yylloc; /* location data for the lookahead */
/* symbol */
#endif
int yynerrs; /* number of parse errors so far */
#endif /* not YYPURE */
#if YYDEBUG != 0
int yydebug; /* nonzero means print parse trace */
/* Since this is uninitialized, it does not stop multiple parsers
from coexisting. */
#endif
/* YYINITDEPTH indicates the initial size of the parser's stacks */
#ifndef YYINITDEPTH
#define YYINITDEPTH 200
#endif
/* YYMAXDEPTH is the maximum size the stacks can grow to
(effective only if the built-in stack extension method is used). */
#if YYMAXDEPTH == 0
#undef YYMAXDEPTH
#endif
#ifndef YYMAXDEPTH
#define YYMAXDEPTH 10000
#endif
/* Define __yy_memcpy. Note that the size argument
should be passed with type unsigned int, because that is what the non-GCC
definitions require. With GCC, __builtin_memcpy takes an arg
of type size_t, but it can handle unsigned int. */
#if __GNUC__ > 1 /* GNU C and GNU C++ define this. */
#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT)
#else /* not GNU C or C++ */
#ifndef __cplusplus
/* This is the most reliable way to avoid incompatibilities
in available built-in functions on various systems. */
static void
__yy_memcpy (to, from, count)
char *to;
char *from;
unsigned int count;
{
register char *f = from;
register char *t = to;
register int i = count;
while (i-- > 0)
*t++ = *f++;
}
#else /* __cplusplus */
/* This is the most reliable way to avoid incompatibilities
in available built-in functions on various systems. */
static void
__yy_memcpy (char *to, char *from, unsigned int count)
{
register char *t = to;
register char *f = from;
register int i = count;
while (i-- > 0)
*t++ = *f++;
}
#endif
#endif
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
into yyparse. The argument should have type void *.
It should actually point to an object.
Grammar actions can access the variable by casting it
to the proper pointer type. */
#ifdef YYPARSE_PARAM
#ifdef __cplusplus
#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
#define YYPARSE_PARAM_DECL
#else /* not __cplusplus */
#define YYPARSE_PARAM_ARG YYPARSE_PARAM
#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
#endif /* not __cplusplus */
#else /* not YYPARSE_PARAM */
#define YYPARSE_PARAM_ARG
#define YYPARSE_PARAM_DECL
#endif /* not YYPARSE_PARAM */
/* Prevent warning if -Wstrict-prototypes. */
#ifdef __GNUC__
#ifdef YYPARSE_PARAM
int yyparse (void *);
#else
int yyparse (void);
#endif
#endif
int
yyparse(YYPARSE_PARAM_ARG)
YYPARSE_PARAM_DECL
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -