📄 pl_gram.c
字号:
/* PLPGSQL_YYTABLE[PLPGSQL_YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what PLPGSQL_YYDEFACT says. If PLPGSQL_YYTABLE_NINF, syntax error. */#define PLPGSQL_YYTABLE_NINF -132static const short plpgsql_yytable[] ={ 56, 90, 114, 91, 162, 92, 181, 94, 174, 96, 97, 98, 99, 100, 101, 27, 21, 164, 191, 163, 186, 226, 126, 192, 1, 2, 110, 107, 187, 182, 127, 227, 165, 4, 108, 209, 111, 183, 210, 128, 12, 203, 129, 16, 109, 28, 130, 200, 85, 137, 138, 9, 86, 14, 87, 10, 14, 112, 121, 194, 195, 11, 131, 181, -131, 36, 29, 37, 133, 18, -131, 30, 204, 205, 17, 141, 142, 143, 38, 39, -131, 40, 188, 41, 42, 20, 21, 223, 24, 35, -131, 81, 83, 95, 43, 44, 158, 45, 89, 46, 93, 103, 47, 48, 102, 49, 106, 169, 170, 171, 113, -131, 172, 115, 118, 123, 50, 51, 52, 134, 136, 53, 54, 145, 150, 146, 11, 152, 153, 148, 154, 159, 176, 177, 222, 178, 29, 193, 185, 197, 201, 202, 214, 217, 220, 230, 8, 225, 228, 15, 23, 84, 218, 144, 206, 105, 208, 229, 216, 120, 213, 219, 215, 0, 0, 36, 0, 37, 212, 0, 0, 0, 0, 0, -46, -46, -46, 0, 38, 39, 0, 40, 0, 41, 42, 0, 0, 0, 0, 0, 0, 0, 0, 224, 43, 44, 0, 45, 0, 46, 0, 231, 47, 48, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 51, 52, 0, 0, 53, 54, 36, 0, 37, 11, 0, 0, 0, 0, 0, 0, 0, -46, -46, 38, 39, 0, 40, 0, 41, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 44, 0, 45, 0, 46, 0, 0, 47, 48, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 51, 52, 0, 0, 53, 54, 36, 0, 37, 11, 0, 0, 0, 0, 0, 0, 0, -46, 0, 38, 39, 0, 40, 0, 41, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 44, 0, 45, 0, 46, 0, 0, 47, 48, 0, 49, 0, 0, 0, 0, -46, 0, 0, 0, 0, 0, 50, 51, 52, 0, 0, 53, 54, 36, 0, 37, 11, 0, 0, 0, 0, 0, 0, 0, -46, 0, 38, 39, 0, 40, 0, 41, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 44, 0, 45, 0, 46, 0, 0, 47, 48, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 51, 52, 0, 0, 53, 54, 0, 0, 0, 11};static const short plpgsql_yycheck[] ={ 26, 36, 83, 38, 134, 40, 148, 42, 142, 44, 45, 46, 47, 48, 49, 11, 11, 51, 66, 136, 4, 37, 10, 71, 53, 54, 21, 62, 12, 21, 18, 47, 66, 64, 69, 39, 31, 29, 42, 27, 5, 175, 30, 8, 79, 41, 34, 164, 3, 61, 62, 0, 7, 5, 9, 65, 8, 52, 93, 15, 16, 67, 50, 205, 5, 6, 62, 8, 103, 66, 11, 67, 70, 71, 67, 110, 111, 112, 19, 20, 21, 22, 66, 24, 25, 5, 11, 217, 62, 68, 31, 62, 67, 66, 35, 36, 122, 38, 68, 40, 13, 18, 43, 44, 66, 46, 72, 57, 58, 59, 48, 52, 62, 21, 57, 57, 57, 58, 59, 17, 4, 62, 63, 68, 33, 62, 67, 66, 28, 69, 57, 55, 66, 68, 215, 66, 62, 4, 35, 51, 17, 26, 17, 31, 25, 226, 2, 66, 66, 6, 16, 31, 205, 113, 181, 57, 192, 224, 198, 92, 195, 213, 197, -1, -1, 6, -1, 8, 194, -1, -1, -1, -1, -1, 15, 16, 17, -1, 19, 20, -1, 22, -1, 24, 25, -1, -1, -1, -1, -1, -1, -1, -1, 219, 35, 36, -1, 38, -1, 40, -1, 227, 43, 44, -1, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 57, 58, 59, -1, -1, 62, 63, 6, -1, 8, 67, -1, -1, -1, -1, -1, -1, -1, 17, 18, 19, 20, -1, 22, -1, 24, 25, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, 38, -1, 40, -1, -1, 43, 44, -1, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 57, 58, 59, -1, -1, 62, 63, 6, -1, 8, 67, -1, -1, -1, -1, -1, -1, -1, 17, -1, 19, 20, -1, 22, -1, 24, 25, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, 38, -1, 40, -1, -1, 43, 44, -1, 46, -1, -1, -1, -1, 51, -1, -1, -1, -1, -1, 57, 58, 59, -1, -1, 62, 63, 6, -1, 8, 67, -1, -1, -1, -1, -1, -1, -1, 17, -1, 19, 20, -1, 22, -1, 24, 25, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, 38, -1, 40, -1, -1, 43, 44, -1, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 57, 58, 59, -1, -1, 62, 63, -1, -1, -1, 67};/* PLPGSQL_YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */static const unsigned char plpgsql_yystos[] ={ 0, 53, 54, 74, 64, 75, 76, 77, 75, 0, 65, 67, 79, 80, 144, 77, 79, 67, 66, 78, 5, 11, 81, 78, 62, 147, 148, 11, 41, 62, 67, 82, 83, 84, 92, 68, 6, 8, 19, 20, 22, 24, 25, 35, 36, 38, 40, 43, 44, 46, 57, 58, 59, 62, 63, 79, 99, 100, 101, 102, 103, 104, 109, 110, 112, 113, 114, 117, 118, 119, 120, 121, 122, 126, 127, 128, 129, 130, 131, 134, 144, 62, 93, 67, 83, 3, 7, 9, 94, 68, 148, 148, 148, 13, 148, 66, 148, 148, 148, 148, 148, 148, 66, 18, 135, 101, 72, 148, 148, 148, 21, 31, 52, 48, 147, 21, 85, 95, 57, 133, 133, 148, 142, 57, 132, 140, 10, 18, 27, 30, 34, 50, 124, 148, 17, 141, 4, 61, 62, 145, 115, 148, 148, 148, 93, 68, 62, 91, 69, 87, 33, 96, 66, 28, 57, 105, 106, 108, 99, 55, 123, 136, 145, 140, 51, 66, 146, 99, 125, 57, 58, 59, 62, 116, 125, 143, 66, 68, 66, 88, 89, 92, 21, 29, 90, 35, 4, 12, 66, 97, 98, 66, 71, 4, 15, 16, 111, 51, 137, 138, 140, 17, 26, 125, 70, 71, 95, 86, 106, 39, 42, 107, 99, 148, 17, 148, 138, 31, 89, 142, 25, 139, 147, 145, 99, 66, 37, 47, 66, 111, 147, 99};#if ! defined (PLPGSQL_YYSIZE_T) && defined (__SIZE_TYPE__)# define PLPGSQL_YYSIZE_T __SIZE_TYPE__#endif#if ! defined (PLPGSQL_YYSIZE_T) && defined (size_t)# define PLPGSQL_YYSIZE_T size_t#endif#if ! defined (PLPGSQL_YYSIZE_T)# if defined (__STDC__) || defined (__cplusplus)# include <stddef.h> /* INFRINGES ON USER NAME SPACE */# define PLPGSQL_YYSIZE_T size_t# endif#endif#if ! defined (PLPGSQL_YYSIZE_T)# define PLPGSQL_YYSIZE_T unsigned int#endif#define plpgsql_yyerrok (plpgsql_yyerrstatus = 0)#define plpgsql_yyclearin (plpgsql_yychar = PLPGSQL_YYEMPTY)#define PLPGSQL_YYEMPTY (-2)#define PLPGSQL_YYEOF 0#define PLPGSQL_YYACCEPT goto plpgsql_yyacceptlab#define PLPGSQL_YYABORT goto plpgsql_yyabortlab#define PLPGSQL_YYERROR goto plpgsql_yyerrlab1/* Like PLPGSQL_YYERROR except do call plpgsql_yyerror. This remains here temporarily to ease the transition to the new meaning of PLPGSQL_YYERROR, for GCC. Once GCC version 2 has supplanted version 1, this can go. */#define PLPGSQL_YYFAIL goto plpgsql_yyerrlab#define PLPGSQL_YYRECOVERING() (!!plpgsql_yyerrstatus)#define PLPGSQL_YYBACKUP(Token, Value) \do \ if (plpgsql_yychar == PLPGSQL_YYEMPTY && plpgsql_yylen == 1) \ { \ plpgsql_yychar = (Token); \ plpgsql_yylval = (Value); \ plpgsql_yytoken = PLPGSQL_YYTRANSLATE (plpgsql_yychar); \ PLPGSQL_YYPOPSTACK; \ goto plpgsql_yybackup; \ } \ else \ { \ plpgsql_yyerror ("syntax error: cannot back up");\ PLPGSQL_YYERROR; \ } \while (0)#define PLPGSQL_YYTERROR 1#define PLPGSQL_YYERRCODE 256/* PLPGSQL_YYLLOC_DEFAULT -- Compute the default location (before the actions are run). */#ifndef PLPGSQL_YYLLOC_DEFAULT# define PLPGSQL_YYLLOC_DEFAULT(Current, Rhs, N) \ Current.first_line = Rhs[1].first_line; \ Current.first_column = Rhs[1].first_column; \ Current.last_line = Rhs[N].last_line; \ Current.last_column = Rhs[N].last_column;#endif/* PLPGSQL_YYLEX -- calling `plpgsql_yylex' with the right arguments. */#ifdef PLPGSQL_YYLEX_PARAM# define PLPGSQL_YYLEX plpgsql_yylex (PLPGSQL_YYLEX_PARAM)#else# define PLPGSQL_YYLEX plpgsql_yylex ()#endif/* Enable debugging if requested. */#if PLPGSQL_YYDEBUG# ifndef PLPGSQL_YYFPRINTF# include <stdio.h> /* INFRINGES ON USER NAME SPACE */# define PLPGSQL_YYFPRINTF fprintf# endif# define PLPGSQL_YYDPRINTF(Args) \do { \ if (plpgsql_yydebug) \ PLPGSQL_YYFPRINTF Args; \} while (0)# define PLPGSQL_YYDSYMPRINT(Args) \do { \ if (plpgsql_yydebug) \ plpgsql_yysymprint Args; \} while (0)# define PLPGSQL_YYDSYMPRINTF(Title, Token, Value, Location) \do { \ if (plpgsql_yydebug) \ { \ PLPGSQL_YYFPRINTF (stderr, "%s ", Title); \ plpgsql_yysymprint (stderr, \ Token, Value); \ PLPGSQL_YYFPRINTF (stderr, "\n"); \ } \} while (0)/*------------------------------------------------------------------.| plpgsql_yy_stack_print -- Print the state stack from its BOTTOM up to its || TOP (cinluded). |`------------------------------------------------------------------*/#if defined (__STDC__) || defined (__cplusplus)static voidplpgsql_yy_stack_print (short *bottom, short *top)#elsestatic voidplpgsql_yy_stack_print (bottom, top) short *bottom; short *top;#endif{ PLPGSQL_YYFPRINTF (stderr, "Stack now"); for (/* Nothing. */; bottom <= top; ++bottom) PLPGSQL_YYFPRINTF (stderr, " %d", *bottom); PLPGSQL_YYFPRINTF (stderr, "\n");}# define PLPGSQL_YY_STACK_PRINT(Bottom, Top) \do { \ if (plpgsql_yydebug) \ plpgsql_yy_stack_print ((Bottom), (Top)); \} while (0)/*------------------------------------------------.| Report that the PLPGSQL_YYRULE is going to be reduced. |`------------------------------------------------*/#if defined (__STDC__) || defined (__cplusplus)static voidplpgsql_yy_reduce_print (int plpgsql_yyrule)#elsestatic voidplpgsql_yy_reduce_print (plpgsql_yyrule) int plpgsql_yyrule;#endif{ int plpgsql_yyi; unsigned int plpgsql_yylineno = plpgsql_yyrline[plpgsql_yyrule]; PLPGSQL_YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ", plpgsql_yyrule - 1, plpgsql_yylineno); /* Print the symbols being reduced, and their result. */ for (plpgsql_yyi = plpgsql_yyprhs[plpgsql_yyrule]; 0 <= plpgsql_yyrhs[plpgsql_yyi]; plpgsql_yyi++) PLPGSQL_YYFPRINTF (stderr, "%s ", plpgsql_yytname [plpgsql_yyrhs[plpgsql_yyi]]); PLPGSQL_YYFPRINTF (stderr, "-> %s\n", plpgsql_yytname [plpgsql_yyr1[plpgsql_yyrule]]);}# define PLPGSQL_YY_REDUCE_PRINT(Rule) \do { \ if (plpgsql_yydebug) \ plpgsql_yy_reduce_print (Rule); \} while (0)/* Nonzero means print parse trace. It is left uninitialized so that multiple parsers can coexist. */int plpgsql_yydebug;#else /* !PLPGSQL_YYDEBUG */# define PLPGSQL_YYDPRINTF(Args)# define PLPGSQL_YYDSYMPRINT(Args)# define PLPGSQL_YYDSYMPRINTF(Title, Token, Value, Location)# define PLPGSQL_YY_STACK_PRINT(Bottom, Top)# define PLPGSQL_YY_REDUCE_PRINT(Rule)#endif /* !PLPGSQL_YYDEBUG *//* PLPGSQL_YYINITDEPTH -- initial size of the parser's stacks. */#ifndef PLPGSQL_YYINITDEPTH# define PLPGSQL_YYINITDEPTH 200#endif/* PLPGSQL_YYMAXDEPTH -- maximum size the stacks can grow to (effective only if the built-in stack extension method is used). Do not make this value too large; the results are undefined if SIZE_MAX < PLPGSQL_YYSTACK_BYTES (PLPGSQL_YYMAXDEPTH) evaluated with infinite-precision integer arithmetic. */#if PLPGSQL_YYMAXDEPTH == 0# undef PLPGSQL_YYMAXDEPTH#endif#ifndef PLPGSQL_YYMAXDEPTH# define PLPGSQL_YYMAXDEPTH 10000#endif#if PLPGSQL_YYERROR_VERBOSE# ifndef plpgsql_yystrlen# if defined (__GLIBC__) && defined (_STRING_H)# define plpgsql_yystrlen strlen# else/* Return the length of PLPGSQL_YYSTR. */static PLPGSQL_YYSIZE_T# if defined (__STDC__) || defined (__cplusplus)plpgsql_yystrlen (const char *plpgsql_yystr)# elseplpgsql_yystrlen (plpgsql_yystr) const char *plpgsql_yystr;# endif{ register const char *plpgsql_yys = plpgsql_yystr; while (*plpgsql_yys++ != '\0') continue; return plpgsql_yys - plpgsql_yystr - 1;}# endif# endif# ifndef plpgsql_yystpcpy# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)# define plpgsql_yystpcpy stpcpy# else/* Copy PLPGSQL_YYSRC to PLPGSQL_YYDEST, returning the address of the terminating '\0' in PLPGSQL_YYDEST. */static char *# if defined (__STDC__) || defined (__cplusplus)plpgsql_yystpcpy (char *plpgsql_yydest, const char *plpgsql_yysrc)# elseplpgsql_yystpcpy (plpgsql_yydest, plpgsql_yysrc) char *plpgsql_yydest; const char *plpgsql_yysrc;# endif{ register char *plpgsql_yyd = plpgsql_yydest; register const char *plpgsql_yys = plpgsql_yysrc; while ((*plpgsql_yyd++ = *plpgsql_yys++) != '\0') continue; return plpgsql_yyd - 1;}# endif# endif#endif /* !PLPGSQL_YYERROR_VERBOSE */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -