📄 parser.cpp
字号:
1, 0, 1, 4, 2, 7, 0, 3, 2, 3,
3, 3, 3, 2, 2, 0, 1, 1, 5, 1,
4, 2, 1, 3, 2, 0, 1, 1, 2, 3,
2, 4, 5, 4, 1, 1, 1, 2, 2, 1,
1, 1, 1, 2, 2, 4, 8, 6, 10, 1,
1, 1, 1, 1, 1, 1, 1, 2, 3, 6,
1, 2, 1, 3, 1, 3, 4, 3, 5, 4,
4, 6, 5, 2, 6, 1, 3, 2, 2, 0,
1, 3, 2, 2, 2, 0, 1, 2, 2, 2,
2, 3, 2, 2, 1, 2, 1, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 5, 3, 2, 3, 3,
1, 2, 5, 3, 1, 3
};
static const short yydefact[] = { 13,
0, 0, 0, 0, 8, 8, 8, 10, 0, 0,
8, 8, 8, 2, 3, 4, 17, 0, 16, 15,
9, 8, 66, 0, 0, 12, 11, 19, 0, 0,
75, 80, 0, 0, 8, 76, 8, 0, 0, 0,
63, 8, 0, 77, 81, 82, 83, 105, 8, 8,
0, 0, 101, 0, 116, 8, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
58, 57, 8, 0, 0, 121, 127, 137, 135, 0,
21, 10, 164, 165, 0, 14, 98, 0, 8, 84,
66, 0, 62, 8, 8, 65, 8, 8, 66, 0,
69, 0, 79, 71, 78, 8, 0, 118, 119, 6,
0, 102, 8, 0, 114, 8, 129, 130, 158, 154,
153, 155, 140, 141, 142, 143, 144, 145, 146, 147,
148, 149, 150, 151, 152, 131, 139, 138, 133, 0,
134, 136, 8, 128, 123, 7, 8, 8, 0, 0,
0, 0, 0, 10, 18, 0, 99, 66, 8, 67,
0, 0, 5, 0, 66, 54, 55, 64, 75, 76,
8, 0, 70, 108, 104, 8, 0, 8, 106, 0,
8, 0, 157, 0, 132, 125, 124, 122, 32, 31,
38, 39, 8, 0, 36, 0, 0, 8, 0, 0,
10, 161, 24, 25, 26, 23, 28, 29, 27, 20,
163, 166, 8, 85, 0, 91, 92, 93, 94, 95,
86, 90, 8, 0, 0, 72, 0, 74, 8, 111,
0, 110, 107, 0, 0, 8, 42, 35, 34, 0,
0, 162, 0, 42, 0, 0, 22, 0, 8, 0,
0, 59, 73, 109, 8, 0, 113, 156, 8, 0,
0, 43, 37, 8, 51, 50, 0, 53, 52, 160,
159, 100, 88, 8, 97, 96, 8, 112, 115, 49,
30, 45, 8, 0, 8, 0, 0, 0, 33, 47,
8, 87, 44, 66, 0, 46, 8, 89, 48, 0,
0, 0
};
static const short yydefgoto[] = { 310,
5, 6, 7, 224, 17, 8, 28, 91, 163, 211,
92, 164, 251, 203, 270, 271, 213, 304, 272, 214,
215, 109, 84, 37, 38, 39, 40, 41, 42, 43,
44, 45, 172, 46, 233, 287, 47, 51, 52, 53,
54, 55, 85, 159, 86, 87, 88, 89, 217, 218,
219, 94, 95
};
static const short yypact[] = { 172,
22, -32, -19, -15,-32768,-32768,-32768,-32768, 73, 14,
-32768,-32768,-32768, 37, 37, 37, 106, 43,-32768,-32768,
-32768,-32768, 136, 222, 534,-32768,-32768, 31, 140, 4,
-6,-32768, 130, 42,-32768, 49,-32768, 51, 229, 58,
-32768, 276, 202,-32768,-32768,-32768,-32768, 150,-32768,-32768,
75, 115, 156, 13,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768, 608, 390,-32768,-32768,-32768,-32768, 395,
116,-32768,-32768,-32768, 145,-32768,-32768, 151,-32768,-32768,
35, 135,-32768,-32768,-32768,-32768,-32768,-32768, 290, 348,
37, 202,-32768, 37,-32768,-32768, 170, 37, 37,-32768,
176, 127,-32768, 38,-32768,-32768, 37, 37, 37, 37,
37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
37, 37, 37, 37, 37, 37, 37, 37, 37, 489,
37, 37,-32768,-32768,-32768,-32768,-32768,-32768, 572, 179,
183, 264, 117,-32768, 106, 163,-32768, 136, -6,-32768,
152, 87,-32768, 222, 136, 37, 37,-32768,-32768,-32768,
276, 202, 37, 37, 187,-32768, 200,-32768, 37, 191,
-32768, 338,-32768, 437, 37, 37, 37,-32768,-32768,-32768,
-32768,-32768,-32768, 212, 17, 191, 219,-32768, 230, 250,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 106,
-32768,-32768,-32768, 37, 241,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768, 207, 541, 37, 202, 37,-32768, 37,
228, 37, 37, 572, 286,-32768, 171,-32768,-32768, 256,
165,-32768, 245, 32, 260, 294, 106, 24,-32768, 161,
109,-32768, 37, 37,-32768, 286,-32768, 37,-32768, 213,
50,-32768,-32768,-32768,-32768,-32768, 112,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768, 37,-32768, 37,
-32768,-32768,-32768, 105,-32768, 109, 28, 32,-32768, 37,
-32768,-32768,-32768, 340, 34,-32768,-32768,-32768, 37, 266,
269,-32768
};
static const short yypgoto[] = {-32768,
-32768,-32768,-32768, -1, -84,-32768,-32768,-32768,-32768,-32768,
144,-32768,-32768, 48,-32768, 25,-32768,-32768, 45,-32768,
-32768,-32768,-32768, -162,-32768, 181, 257, -87, 247, -23,
-28,-32768, 168,-32768, 134, 101,-32768, 232,-32768, 352,
-32768, -236, -147,-32768, 248, 324,-32768,-32768,-32768,-32768,
-32768, -7, -35
};
#define YYLAST 652
static const short yytable[] = { 10,
216, 20, 194, 14, 15, 16, 21, 165, 267, 23,
24, 25, 117, 125, 115, 11, 21, 124, 112, 21,
30, 178, 9, 22, -8, 126, 21, 250, 12, 289,
21, -8, 13, 101, 21, 102, 21, 21, 190, 21,
111, 114, 269, 29, 245, 169, 90, 118, 119, -68,
292, 103, 100, 96, 127, 128, 129, 130, 131, 132,
133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
143, 144, 145, 146, 147, 148, 149, 150, 151, 220,
223, 152, 282, 115, 302, 187, 182, 191, 161, 170,
308, 226, 227, 228, 229, 230, 266, 168, 104, -41,
293, 105, 174, 175, -67, 176, 177, 21, 26, 27,
183, 21, 292, 110, 184, 121, -1, 206, 285, 286,
18, 189, 19, 120, 192, 49, 257, 31, 32, 33,
34, 35, 90, 207, 208, 209, 162, 21, 21, 50,
97, 307, 98, 231, 232, 166, 31, 32, 33, 34,
35, 195, 200, 115, 299, 196, 197, 237, 222, 295,
205, 167, 293, -103, -120, 226, 227, 228, 229, 230,
185, 36, -66, 21, 201, 99, 188, 222, 210, 236,
238, 269, 222, 173, 240, 21, 242, 18, 93, 243,
36, 1, 201, 2, 3, 4, 249, 18, 252, 116,
241, 247, 113, 18, -8, 123, 254, 225, 115, 202,
18, 221, -8, 32, 33, 34, 35, 283, 232, 253,
-40, 258, 48, 18, 21, 186, 18, 202, 199, 106,
255, 261, 49, 222, 18, 263, 239, 264, 18, -56,
-56, -56, -56, -56, 268, 276, 50, 279, 281, -8,
256, 259, -8, -8, -8, 262, -8, -8, 273, 18,
-8, 248, 291, 288, 204, 311, -8, 290, 312, -120,
-120, -120, 294, -8, -8, 18, -60, 265, 277, -60,
107, 108, 296, -56, -56, 297, 155, 32, 33, 34,
35, 298, 18, 300, 275, -126, -126, -126, 274, 305,
31, 32, 33, 34, 35, 309, 212, 18, -8, 278,
50, -126, -126, -126, -126, -126, -126, -126, -126, -126,
-126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
-126, -126, -126, -120, -120, -120, 157, -126, 244, -126,
21, 18, 303, 280, 36, 158, -126, 56, 57, 58,
31, 32, 33, 34, 35, 235, 181, 171, 179, 32,
33, 34, 35, 59, 60, 61, 62, 63, 64, 65,
66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
76, 77, 78, 79, 80, -117, -117, -117, 306, 81,
155, 82, 260, 284, 36, 160, 301, -8, 83, -126,
-126, -126, 180, 122, -8, 234, 198, 154, 0, 0,
0, 0, 0, 0, 0, -126, -126, -126, -126, -126,
-126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
-126, -126, -126, -126, -126, -126, -126, 155, 156, -8,
157, -126, 0, -126, 0, 0, -126, -126, -126, 158,
-126, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -126, -126, -126, -126, -126, -126, -126, -126,
-126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
-126, -126, -126, -126, 0, 0, 0, 157, -126, 193,
-126, 21, 0, 0, 0, 246, 158, -126, 56, 57,
58, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 59, 60, 61, 62, 63, 64,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
75, 76, 77, 78, 79, 80, 21, 0, 0, 0,
81, 106, 82, 56, 57, 58, 0, 0, 0, 83,
0, -56, -56, -56, -56, -56, 0, 0, 0, 59,
60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
80, 56, 57, 58, 0, 81, 0, 82, -61, 0,
0, -61, 107, 108, 83, -56, -56, 59, 60, 61,
62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
72, 73, 74, 75, 76, 77, 78, 79, 80, 0,
0, 0, 0, 81, 0, 82, 0, 0, 0, 0,
0, 0, 83, 59, 60, 61, 62, 63, 64, 65,
66, 67, 68, 69, 70, 71, 72, 73, 74, 153,
76, 77
};
static const short yycheck[] = { 1,
163, 9, 150, 5, 6, 7, 3, 92, 245, 11,
12, 13, 48, 1, 43, 48, 3, 53, 42, 3,
22, 109, 1, 10, 3, 13, 3, 11, 48, 266,
3, 10, 48, 35, 3, 37, 3, 3, 1, 3,
42, 43, 11, 1, 192, 11, 16, 49, 50, 56,
1, 1, 11, 50, 56, 57, 58, 59, 60, 61,
62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
72, 73, 74, 75, 76, 77, 78, 79, 80, 164,
168, 83, 59, 112, 57, 121, 110, 50, 90, 55,
57, 5, 6, 7, 8, 9, 244, 99, 48, 50,
51, 51, 104, 105, 56, 107, 108, 3, 3, 4,
112, 3, 1, 56, 116, 1, 0, 1, 10, 11,
48, 123, 50, 49, 126, 11, 211, 11, 12, 13,
14, 15, 16, 17, 18, 19, 21, 3, 3, 25,
11, 304, 13, 57, 58, 1, 11, 12, 13, 14,
15, 153, 160, 182, 50, 157, 158, 181, 166, 48,
162, 11, 51, 49, 50, 5, 6, 7, 8, 9,
1, 55, 56, 3, 10, 46, 50, 185, 62, 181,
182, 11, 190, 49, 186, 3, 188, 48, 49, 191,
55, 20, 10, 22, 23, 24, 204, 48, 206, 50,
1, 203, 1, 48, 3, 50, 208, 56, 237, 45,
48, 49, 11, 12, 13, 14, 15, 57, 58, 1,
50, 223, 1, 48, 3, 50, 48, 45, 50, 1,
1, 233, 11, 241, 48, 237, 50, 239, 48, 11,
12, 13, 14, 15, 246, 253, 25, 255, 256, 48,
1, 11, 51, 52, 53, 49, 55, 56, 3, 48,
59, 50, 50, 265, 1, 0, 3, 269, 0, 48,
49, 50, 274, 10, 11, 48, 48, 50, 254, 51,
52, 53, 284, 55, 56, 287, 1, 12, 13, 14,
15, 293, 48, 295, 50, 10, 11, 12, 251, 301,
11, 12, 13, 14, 15, 307, 163, 48, 45, 50,
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, 1, 54,
3, 48, 298, 50, 55, 60, 61, 10, 11, 12,
11, 12, 13, 14, 15, 175, 110, 101, 11, 12,
13, 14, 15, 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, 49, 52,
1, 54, 225, 260, 55, 1, 296, 3, 61, 10,
11, 12, 55, 52, 10, 174, 159, 84, -1, -1,
-1, -1, -1, -1, -1, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 1, 49, 45,
51, 52, -1, 54, -1, -1, 10, 11, 12, 60,
61, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
44, 45, 46, 47, -1, -1, -1, 51, 52, 1,
54, 3, -1, -1, -1, 59, 60, 61, 10, 11,
12, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
42, 43, 44, 45, 46, 47, 3, -1, -1, -1,
52, 1, 54, 10, 11, 12, -1, -1, -1, 61,
-1, 11, 12, 13, 14, 15, -1, -1, -1, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
47, 10, 11, 12, -1, 52, -1, 54, 48, -1,
-1, 51, 52, 53, 61, 55, 56, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 41, 42, 43, 44, 45, 46, 47, -1,
-1, -1, -1, 52, -1, 54, -1, -1, -1, -1,
-1, -1, 61, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
43, 44
};
#define YYPURE 1
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
#line 3 "/usr/share/bison.simple"
/* 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
#ifndef __OOM__
#define YYSTACK_ALLOC malloc
#else
#define YYSTACK_ALLOC MemoryManager::Alloc
#endif
#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
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -