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

📄 sql.tab.c

📁 winNT技术操作系统,国外开放的原代码和LIUX一样
💻 C
📖 第 1 页 / 共 5 页
字号:
/* YYLAST -- Last index in YYTABLE.  */
#define YYLAST   133

/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS  63
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS  33
/* YYNRULES -- Number of rules. */
#define YYNRULES  75
/* YYNRULES -- Number of states. */
#define YYNSTATES  136

/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
#define YYUNDEFTOK  2
#define YYMAXUTOK   317

#define YYTRANSLATE(YYX)						\
  ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)

/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
static const unsigned char yytranslate[] =
{
       0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
      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,    53,    54,
      55,    56,    57,    58,    59,    60,    61,    62
};

#if YYDEBUG
/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
   YYRHS.  */
static const unsigned char yyprhs[] =
{
       0,     0,     3,     5,     7,     9,    11,    13,    15,    17,
      28,    40,    47,    55,    62,    67,    70,    75,    77,    79,
      84,    88,    90,    93,    95,    98,   101,   103,   107,   109,
     114,   116,   118,   120,   122,   124,   126,   131,   133,   136,
     140,   143,   145,   149,   151,   153,   157,   160,   165,   169,
     173,   177,   181,   185,   189,   193,   197,   201,   205,   210,
     212,   214,   216,   220,   222,   226,   230,   232,   235,   237,
     239,   241,   245,   247,   249,   251
};

/* YYRHS -- A `-1'-separated list of the rules' RHS. */
static const yysigned_char yyrhs[] =
{
      64,     0,    -1,    65,    -1,    79,    -1,    67,    -1,    66,
      -1,    68,    -1,    69,    -1,    70,    -1,    20,    23,    93,
      29,    82,    40,    50,    29,    87,    40,    -1,    20,    23,
      93,    29,    82,    40,    50,    29,    87,    40,    48,    -1,
       8,    47,    93,    29,    72,    40,    -1,     8,    47,    93,
      29,    72,    40,    17,    -1,    49,    93,    42,    88,    51,
      85,    -1,    49,    93,    42,    88,    -1,     9,    83,    -1,
       3,    47,    93,    71,    -1,    17,    -1,    13,    -1,    73,
      39,    25,    82,    -1,    73,     7,    74,    -1,    74,    -1,
      92,    75,    -1,    76,    -1,    76,    31,    -1,    76,    48,
      -1,    77,    -1,    77,    34,    35,    -1,     6,    -1,     6,
      29,    78,    40,    -1,    28,    -1,    43,    -1,    21,    -1,
      27,    -1,    36,    -1,    95,    -1,    80,    38,     5,    82,
      -1,    80,    -1,    41,    81,    -1,    41,    10,    81,    -1,
      82,    83,    -1,    92,    -1,    92,     7,    82,    -1,    45,
      -1,    84,    -1,    84,    51,    85,    -1,    14,    93,    -1,
      14,    93,     7,    93,    -1,    29,    85,    40,    -1,    85,
       4,    85,    -1,    85,    37,    85,    -1,    91,    12,    86,
      -1,    91,    16,    86,    -1,    91,    30,    86,    -1,    91,
      26,    86,    -1,    91,    15,    86,    -1,    91,    33,    86,
      -1,    91,    24,    35,    -1,    91,    24,    34,    35,    -1,
      91,    -1,    90,    -1,    90,    -1,    90,     7,    87,    -1,
      89,    -1,    89,     7,    88,    -1,    92,    12,    90,    -1,
      95,    -1,    32,    95,    -1,    46,    -1,    52,    -1,    92,
      -1,    93,    11,    94,    -1,    94,    -1,    94,    -1,    18,
      -1,    22,    -1
};

/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
static const unsigned short int yyrline[] =
{
       0,   123,   123,   131,   132,   133,   134,   135,   136,   140,
     151,   164,   176,   191,   201,   214,   227,   240,   244,   251,
     261,   271,   278,   286,   290,   294,   301,   305,   312,   316,
     320,   324,   328,   332,   336,   343,   352,   364,   368,   372,
     388,   409,   410,   414,   421,   422,   438,   448,   461,   467,
     473,   479,   485,   491,   497,   503,   509,   515,   521,   530,
     531,   535,   542,   553,   554,   562,   570,   576,   582,   588,
     597,   606,   612,   621,   628,   637
};
#endif

#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
   First, the terminals, then, starting at YYNTOKENS, nonterminals. */
static const char *const yytname[] =
{
  "$end", "error", "$undefined", "TK_ALTER", "TK_AND", "TK_BY", "TK_CHAR",
  "TK_COMMA", "TK_CREATE", "TK_DELETE", "TK_DISTINCT", "TK_DOT", "TK_EQ",
  "TK_FREE", "TK_FROM", "TK_GE", "TK_GT", "TK_HOLD", "TK_ID", "TK_ILLEGAL",
  "TK_INSERT", "TK_INT", "TK_INTEGER", "TK_INTO", "TK_IS", "TK_KEY",
  "TK_LE", "TK_LONG", "TK_LONGCHAR", "TK_LP", "TK_LT", "TK_LOCALIZABLE",
  "TK_MINUS", "TK_NE", "TK_NOT", "TK_NULL", "TK_OBJECT", "TK_OR",
  "TK_ORDER", "TK_PRIMARY", "TK_RP", "TK_SELECT", "TK_SET", "TK_SHORT",
  "TK_SPACE", "TK_STAR", "TK_STRING", "TK_TABLE", "TK_TEMPORARY",
  "TK_UPDATE", "TK_VALUES", "TK_WHERE", "TK_WILDCARD", "AGG_FUNCTION.",
  "COLUMN", "FUNCTION", "COMMENT", "UNCLOSED_STRING", "SPACE", "ILLEGAL",
  "END_OF_FILE", "TK_LIKE", "TK_NEGATION", "$accept", "query", "onequery",
  "oneinsert", "onecreate", "oneupdate", "onedelete", "onealter",
  "alterop", "table_def", "column_def", "column_and_type", "column_type",
  "data_type_l", "data_type", "data_count", "oneselect", "unorderedsel",
  "selectfrom", "selcollist", "from", "fromtable", "expr", "val",
  "constlist", "update_assign_list", "column_assignment", "const_val",
  "column_val", "column", "table", "id", "number", 0
};
#endif

# ifdef YYPRINT
/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
   token YYLEX-NUM.  */
static const unsigned short int yytoknum[] =
{
       0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
     265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
     275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
     285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
     295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
     305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
     315,   316,   317
};
# endif

/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
static const unsigned char yyr1[] =
{
       0,    63,    64,    65,    65,    65,    65,    65,    65,    66,
      66,    67,    67,    68,    68,    69,    70,    71,    71,    72,
      73,    73,    74,    75,    75,    75,    76,    76,    77,    77,
      77,    77,    77,    77,    77,    78,    79,    79,    80,    80,
      81,    82,    82,    82,    83,    83,    84,    84,    85,    85,
      85,    85,    85,    85,    85,    85,    85,    85,    85,    86,
      86,    87,    87,    88,    88,    89,    90,    90,    90,    90,
      91,    92,    92,    93,    94,    95
};

/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
static const unsigned char yyr2[] =
{
       0,     2,     1,     1,     1,     1,     1,     1,     1,    10,
      11,     6,     7,     6,     4,     2,     4,     1,     1,     4,
       3,     1,     2,     1,     2,     2,     1,     3,     1,     4,
       1,     1,     1,     1,     1,     1,     4,     1,     2,     3,
       2,     1,     3,     1,     1,     3,     2,     4,     3,     3,
       3,     3,     3,     3,     3,     3,     3,     3,     4,     1,
       1,     1,     3,     1,     3,     3,     1,     2,     1,     1,
       1,     3,     1,     1,     1,     1
};

/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
   STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
   means the default is an error.  */
static const unsigned char yydefact[] =
{
       0,     0,     0,     0,     0,     0,     0,     0,     2,     5,
       4,     6,     7,     8,     3,    37,     0,     0,     0,    15,
      44,     0,     0,    74,    43,    38,     0,    41,     0,    72,
       0,    73,     1,     0,     0,     0,    46,     0,     0,    39,
      40,     0,     0,     0,     0,    18,    17,    16,     0,     0,
       0,    45,     0,    70,     0,    42,    71,    14,    63,     0,
      36,     0,     0,    21,     0,    47,     0,     0,     0,     0,
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
      11,     0,     0,    28,    32,    33,    30,    34,    31,    22,
      23,    26,    48,    49,    50,    75,     0,    68,    69,    51,
      60,    59,    66,    55,    52,     0,    57,    54,    53,    56,
       0,    13,    64,    65,    12,    20,     0,     0,    24,    25,
       0,    67,    58,     0,    19,     0,    35,    27,     0,    29,
       0,    61,     9,     0,    10,    62
};

/* YYDEFGOTO[NTERM-NUM]. */
static const short int yydefgoto[] =
{
      -1,     7,     8,     9,    10,    11,    12,    13,    47,    61,
      62,    63,    89,    90,    91,   125,    14,    15,    25,    26,
      19,    20,    51,    99,   130,    57,    58,   100,   101,    53,
      28,    29,   102
};

/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
   STATE-NUM.  */
#define YYPACT_NINF -89
static const yysigned_char yypact[] =
{
       3,   -34,   -28,    31,    25,    48,    36,    60,   -89,   -89,
     -89,   -89,   -89,   -89,   -89,    32,    36,    36,    36,   -89,
      28,    36,    12,   -89,   -89,   -89,    31,    81,    78,    79,
      49,   -89,   -89,    87,     1,    69,    92,    51,    74,   -89,
     -89,    12,    36,    36,    12,   -89,   -89,   -89,    36,    36,
      51,     5,    71,   -89,    12,   -89,   -89,    54,    93,    94,
     -89,    67,    -4,   -89,    35,   -89,     0,    51,    51,    50,
      50,    50,    -2,    50,    50,    50,    68,    51,    36,    29,
      98,    36,    91,    88,   -89,   -89,   -89,   -89,   -89,   -89,
     -24,    84,   -89,   -89,   115,   -89,    99,   -89,   -89,   -89,
     -89,   -89,   -89,   -89,   -89,    85,   -89,   -89,   -89,   -89,
      72,     5,   -89,   -89,   -89,   -89,    12,    99,   -89,   -89,
      89,   -89,   -89,    96,   -89,    83,   -89,   -89,    29,   -89,
      86,   120,    80,    29,   -89,   -89
};

/* YYPGOTO[NTERM-NUM].  */
static const yysigned_char yypgoto[] =
{
     -89,   -89,   -89,   -89,   -89,   -89,   -89,   -89,   -89,   -89,
     -89,    52,   -89,   -89,   -89,   -89,   -89,   -89,   107,   -39,
     104,   -89,    17,    39,    -1,    53,   -89,   -78,    -3,    -5,
      10,     4,   -88
};

/* YYTABLE[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 YYDEFACT says.
   If YYTABLE_NINF, syntax error.  */
#define YYTABLE_NINF -74
static const short int yytable[] =
{
      27,   113,    55,    81,    67,    60,     1,   118,   121,    67,
      31,     2,     3,    16,    45,    76,    30,    27,    46,    17,
      31,    31,    31,     4,   119,    31,    34,    35,    36,   126,
      23,    38,   105,   106,    52,    82,    27,    68,    59,    27,
      92,    83,    68,    64,     5,    18,    56,    52,    21,    27,
     131,    95,     6,    31,    23,   131,    84,    24,    22,    65,
      32,    96,    85,    86,    52,    52,    23,    66,    23,    23,
      33,    87,    95,    59,    52,    97,    64,   124,    88,    37,
      50,    98,    96,    69,    93,    94,    70,    71,    41,    42,
     -73,    43,    44,    24,   111,    72,    97,    73,    48,    49,
      78,    74,    98,    54,    75,    77,    79,    80,   110,   103,
     104,    27,   107,   108,   109,   114,   116,   117,   120,    67,
     122,    95,   123,   129,   127,   128,   132,   133,   134,    39,
      40,   112,   135,   115
};

static const unsigned char yycheck[] =
{
       5,    79,    41,     7,     4,    44,     3,    31,    96,     4,
       6,     8,     9,    47,    13,    54,     6,    22,    17,    47,
      16,    17,    18,    20,    48,    21,    16,    17,    18,   117,
      18,    21,    34,    35,    37,    39,    41,    37,    43,    44,
      40,     6,    37,    48,    41,    14,    42,    50,    23,    54,
     128,    22,    49,    49,    18,   133,    21,    45,    10,    49,
       0,    32,    27,    28,    67,    68,    18,    50,    18,    18,
      38,    36,    22,    78,    77,    46,    81,   116,    43,    51,
      29,    52,    32,    12,    67,    68,    15,    16,     7,    11,
      11,    42,     5,    45,    77,    24,    46,    26,    29,     7,
       7,    30,    52,    29,    33,    51,    12,    40,    40,    70,
      71,   116,    73,    74,    75,    17,    25,    29,    34,     4,
      35,    22,    50,    40,    35,    29,    40,     7,    48,    22,
      26,    78,   133,    81
};

/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
   symbol of state STATE-NUM.  */
static const unsigned char yystos[] =
{
       0,     3,     8,     9,    20,    41,    49,    64,    65,    66,
      67,    68,    69,    70,    79,    80,    47,    47,    14,    83,
      84,    23,    10,    18,    45,    81,    82,    92,    93,    94,
      93,    94,     0,    38,    93,    93,    93,    51,    93,    81,
      83,     7,    11,    42,     5,    13,    17,    71,    29,     7,
      29,    85,    91,    92,    29,    82,    94,    88,    89,    92,
      82,    72,    73,    74,    92,    93,    85,     4,    37,    12,
      15,    16,    24,    26,    30,    33,    82,    51,     7,    12,
      40,     7,    39,     6,    21,    27,    28,    36,    43,    75,
      76,    77,    40,    85,    85,    22,    32,    46,    52,    86,
      90,    91,    95,    86,    86,    34,    35,    86,    86,    86,
      40,    85,    88,    90,    17,    74,    25,    29,    31,    48,
      34,    95,    35,    50,    82,    78,    95,    35,    29,    40,
      87,    90,    40,     7,    48,    87
};

#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 yyerrorlab


/* 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);						\
      yytoken = YYTRANSLATE (yychar);				\
      YYPOPSTACK;						\
      goto yybackup;						\
    }								\
  else								\
    {								\
      yyerror (YY_("syntax error: cannot back up")); \
      YYERROR;							\
    }								\
while (0)


#define YYTERROR	1
#define YYERRCODE	256


/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
   If N is 0, then set CURRENT to the empty location which ends
   the previous symbol: RHS[0] (always defined).  */

#define YYRHSLOC(Rhs, K) ((Rhs)[K])
#ifndef YYLLOC_DEFAULT
# define YYLLOC_DEFAULT(Current, Rhs, N)				\
    do									\
      if (N)								\
	{								\
	  (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;	\
	  (Current).first_column = YYRHSLOC (Rhs, 1).first_column;	\
	  (Current).last_line    = YYRHSLOC (Rhs, N).last_line;		\
	  (Current).last_column  = YYRHSLOC (Rhs, N).last_column;	\
	}								\
      else								\
	{								\
	  (Current).first_line   = (Current).last_line   =		\
	    YYRHSLOC (Rhs, 0).last_line;				\
	  (Current).first_column = (Current).last_column =		\
	    YYRHSLOC (Rhs, 0).last_column;				\
	}								\
    while (0)
#endif


/* YY_LOCATION_PRINT -- Print the location on the stream.
   This macro was not mandated originally: define only if we know
   we won't break user code: when these are the locations we know.  */

#ifndef YY_LOCATION_PRINT
# if YYLTYPE_IS_TRIVIAL
#  define YY_LOCATION_PRINT(File, Loc)			\
     fprintf (File, "%d.%d-%d.%d",			\
              (Loc).first_line, (Loc).first_column,	\
              (Loc).last_line,  (Loc).last_column)
# else
#  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
# endif
#endif


/* YYLEX -- calling `yylex' with the right arguments.  */

#ifdef YYLEX_PARAM
# define YYLEX yylex (&yylval, YYLEX_PARAM)
#else
# define YYLEX yylex (&yylval)
#endif

/* Enable debugging if requested.  */
#if YYDEBUG

# ifndef YYFPRINTF
#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
#  define YYFPRINTF fprintf
# endif

# define YYDPRINTF(Args)			\
do {						\
  if (yydebug)					\
    YYFPRINTF Args;				\
} while (0)

# define YY_SYMBOL_PRINT(Title, Type, Value, Location)		\
do {								\
  if (yydebug)							\
    {								\
      YYFPRINTF (stderr, "%s ", Title);				\
      yysymprint (stderr,					\
                  Type, Value);	\
      YYFPRINTF (stderr, "\n");					\
    }								\
} while (0)

/*------------------------------------------------------------------.
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
| TOP (included).                                                   |
`------------------------------------------------------------------*/

#if defined (__STDC__) || defined (__cplusplus)
static void
yy_stack_print (short int *bottom, short int *top)
#else
static void
yy_stack_print (bottom, top)
    short int *bottom;
    short int *top;
#endif
{
  YYFPRINTF (stderr, "Stack now");
  for (/* Nothing. */; bottom <= top; ++bottom)
    YYFPRINTF (stderr, " %d", *bottom);
  YYFPRINTF (stderr, "\n");
}

# define YY_STACK_PRINT(Bottom, Top)				\
do {								\
  if (yydebug)							\
    yy_stack_print ((Bottom), (Top));				\
} while (0)


/*------------------------------------------------.
| Report that the YYRULE is going to be reduced.  |
`------------------------------------------------*/

#if defined (__STDC__) || defined (__cplusplus)
static void
yy_reduce_print (int yyrule)
#else

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -