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

📄 jamgram.c

📁 C++的一个好库。。。现在很流行
💻 C
📖 第 1 页 / 共 4 页
字号:
static const unsigned short 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
};
# endif

/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
static const unsigned char yyr1[] =
{
       0,    49,    50,    50,    51,    51,    52,    52,    52,    53,
      54,    54,    55,    55,    56,    56,    57,    57,    57,    57,
      57,    57,    57,    57,    57,    57,    57,    57,    57,    57,
      57,    58,    59,    57,    60,    60,    60,    60,    61,    61,
      61,    61,    61,    61,    61,    61,    61,    61,    61,    61,
      61,    61,    62,    62,    63,    64,    64,    65,    66,    66,
      67,    68,    67,    69,    69,    69,    70,    70,    71,    71,
      71,    71,    71,    71,    72,    72
};

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

/* 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[] =
{
       2,    61,    66,    58,    15,     0,    58,    58,    58,     0,
      58,    58,     0,     9,    60,     0,     3,     0,     6,     0,
       0,     0,     0,    55,    57,    14,     0,     0,     0,    60,
       0,    38,     0,     9,     0,    15,     0,     0,     0,     0,
       5,     4,     0,     1,     0,     7,    35,    34,    36,     0,
      58,    58,     0,    58,     0,    73,    70,    72,    71,    69,
      68,    74,    67,     9,    58,    59,     0,    50,     0,     0,
       0,     0,     0,     0,     0,     0,     0,     9,     0,     0,
      58,    17,    58,    11,     0,     9,    30,    21,    52,     9,
      16,    18,    13,    37,     0,     0,     0,    63,    62,    58,
       0,     0,    56,    58,    51,    40,    45,    46,    41,    42,
      39,    43,    44,     0,    47,    48,    49,    10,     9,     0,
       0,     0,    52,     0,    58,    15,    58,    19,    58,    58,
      75,    31,    26,     0,    24,     8,    25,     0,    23,    53,
      27,     0,    29,     0,    65,    64,     0,     9,    15,     9,
      12,    20,    32,     0,    28,    54,     0,    22,    33
};

/* YYDEFGOTO[NTERM-NUM]. */
static const short yydefgoto[] =
{
      -1,    15,    39,    40,    41,    84,   125,    17,    18,   146,
     156,    51,    30,   121,   122,    22,    23,    24,    31,    20,
      54,    21,    62,   100
};

/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
   STATE-NUM.  */
#define YYPACT_NINF -48
static const short yypact[] =
{
     179,   -48,   -48,   -48,   -15,     7,   -48,   -16,   -48,     3,
     -48,   -48,     7,   179,     1,    27,   -48,    -9,   179,    19,
      -3,    33,   -11,    24,     3,   -48,   -10,     7,     7,   -48,
     138,     9,    30,    35,    13,   205,    53,    22,   151,    20,
     -48,   -48,    56,   -48,    23,   -48,   -48,   -48,   -48,    61,
     -48,   -48,     3,   -48,    62,   -48,   -48,   -48,   -48,   -48,
     -48,    58,   -48,   179,   -48,   -48,    52,   -48,   164,     7,
       7,     7,     7,     7,     7,     7,     7,   179,     7,     7,
     -48,   -48,   -48,   -48,    72,   179,   -48,   -48,    68,   179,
     -48,   -48,    85,   -48,    77,    73,     8,   -48,   -48,   -48,
      50,    57,   -48,   -48,   -48,    45,    93,    93,   -48,   -48,
      45,   -48,   -48,    64,   245,   245,   -48,   -48,   179,    66,
      67,    69,    68,    71,   -48,   205,   -48,   -48,   -48,   -48,
     -48,   -48,   -48,    70,    79,   -48,   -48,   109,   -48,   -48,
     -48,   112,   -48,   115,   -48,   -48,    75,   179,   205,   179,
     -48,   -48,   -48,    81,   -48,   -48,    82,   -48,   -48
};

/* YYPGOTO[NTERM-NUM].  */
static const short yypgoto[] =
{
     -48,   -48,   -47,     5,   104,   -48,   -48,   136,   -27,   -48,
     -48,    47,    60,    36,   -48,   -13,    -4,   -48,     0,   -48,
     -48,   -48,   -48,   -48
};

/* 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 -59
static const short yytable[] =
{
      19,    42,    32,    33,    34,    16,    36,    37,    86,    35,
      27,   -58,   -58,    19,    28,     1,   101,    25,    19,   -58,
      53,     1,   -14,    45,    65,     1,     1,    43,    46,    44,
     113,    52,    63,    47,    64,    19,    48,    66,   119,    80,
      97,    81,   123,    49,    29,   128,    94,    95,   -58,    82,
      29,   102,    96,    50,    29,    29,    85,    72,    73,    55,
      75,    76,    56,    19,    87,    88,    90,    91,    57,    58,
      92,   135,    38,    59,    60,    93,   116,    19,   117,    99,
      61,    98,   103,   118,   127,    19,    46,    67,    68,    19,
     120,    47,   124,   131,    48,   130,   129,    69,   142,   133,
     153,    49,   155,   132,   148,    72,    73,    74,    75,    76,
     134,   141,   136,   147,   137,   138,   145,   140,    19,   149,
     150,   154,   143,   152,   144,    19,   151,   157,   158,   105,
     106,   107,   108,   109,   110,   111,   112,    83,   114,   115,
      26,   126,    69,    70,    71,     0,     0,    19,    19,    19,
      72,    73,    74,    75,    76,    69,    70,    71,   139,     0,
       0,     0,     0,    72,    73,    74,    75,    76,    69,    70,
      71,     0,   104,     0,     0,     0,    72,    73,    74,    75,
      76,    77,    78,    79,     0,     0,     0,     0,     0,     0,
       0,     0,     0,     0,    89,    78,    79,     1,     0,     2,
       0,     0,     3,     0,     0,     0,     4,     5,    78,    79,
       6,     7,     8,     9,     0,     0,    10,   -15,    11,     0,
       0,    12,    13,     1,     0,     2,    14,     0,     3,     0,
       0,     0,     4,     5,     0,     0,     6,    25,     8,     9,
       0,     0,    10,     0,    11,     0,     0,    12,    13,    69,
      70,    71,    14,     0,     0,     0,     0,    72,    73,    74,
      75,    76
};

static const short yycheck[] =
{
       0,    14,     6,     7,     8,     0,    10,    11,    35,     9,
       3,    10,    11,    13,     7,    18,    63,    32,    18,    18,
      20,    18,    38,    18,    24,    18,    18,     0,     9,    38,
      77,    34,    43,    14,    10,    35,    17,    47,    85,    30,
      53,    11,    89,    24,    47,    37,    50,    51,    47,    14,
      47,    64,    52,    34,    47,    47,    43,    12,    13,    26,
      15,    16,    29,    63,    11,    43,    46,    11,    35,    36,
      47,   118,    12,    40,    41,    14,    80,    77,    82,    21,
      47,    19,    30,    11,    11,    85,     9,    27,    28,    89,
      22,    14,     7,    43,    17,    99,    96,     4,   125,   103,
     147,    24,   149,    46,    25,    12,    13,    14,    15,    16,
      46,   124,    46,    43,    47,    46,   129,    46,   118,    10,
       8,   148,   126,    48,   128,   125,    11,    46,    46,    69,
      70,    71,    72,    73,    74,    75,    76,    33,    78,    79,
       4,    94,     4,     5,     6,    -1,    -1,   147,   148,   149,
      12,    13,    14,    15,    16,     4,     5,     6,   122,    -1,
      -1,    -1,    -1,    12,    13,    14,    15,    16,     4,     5,
       6,    -1,     8,    -1,    -1,    -1,    12,    13,    14,    15,
      16,    43,    44,    45,    -1,    -1,    -1,    -1,    -1,    -1,
      -1,    -1,    -1,    -1,    43,    44,    45,    18,    -1,    20,
      -1,    -1,    23,    -1,    -1,    -1,    27,    28,    44,    45,
      31,    32,    33,    34,    -1,    -1,    37,    38,    39,    -1,
      -1,    42,    43,    18,    -1,    20,    47,    -1,    23,    -1,
      -1,    -1,    27,    28,    -1,    -1,    31,    32,    33,    34,
      -1,    -1,    37,    -1,    39,    -1,    -1,    42,    43,     4,
       5,     6,    47,    -1,    -1,    -1,    -1,    12,    13,    14,
      15,    16
};

/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
   symbol of state STATE-NUM.  */
static const unsigned char yystos[] =
{
       0,    18,    20,    23,    27,    28,    31,    32,    33,    34,
      37,    39,    42,    43,    47,    50,    52,    56,    57,    67,
      68,    70,    64,    65,    66,    32,    56,     3,     7,    47,
      61,    67,    65,    65,    65,    67,    65,    65,    61,    51,
      52,    53,    64,     0,    38,    52,     9,    14,    17,    24,
      34,    60,    34,    67,    69,    26,    29,    35,    36,    40,
      41,    47,    71,    43,    10,    67,    47,    61,    61,     4,
       5,     6,    12,    13,    14,    15,    16,    43,    44,    45,
      30,    11,    14,    53,    54,    43,    57,    11,    43,    43,
      46,    11,    47,    14,    65,    65,    67,    64,    19,    21,
      72,    51,    64,    30,     8,    61,    61,    61,    61,    61,
      61,    61,    61,    51,    61,    61,    65,    65,    11,    51,
      22,    62,    63,    51,     7,    55,    60,    11,    37,    67,
      65,    43,    46,    65,    46,    51,    46,    47,    46,    62,
      46,    64,    57,    65,    65,    64,    58,    43,    25,    10,
       8,    11,    48,    51,    57,    51,    59,    46,    46
};

#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
# define YYSIZE_T __SIZE_TYPE__
#endif
#if ! defined (YYSIZE_T) && defined (size_t)
# define YYSIZE_T size_t
#endif
#if ! defined (YYSIZE_T)
# if defined (__STDC__) || defined (__cplusplus)
#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
#  define YYSIZE_T size_t
# endif
#endif
#if ! defined (YYSIZE_T)
# define YYSIZE_T unsigned int
#endif

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

#define YYTERROR	1
#define YYERRCODE	256

/* YYLLOC_DEFAULT -- Compute the default location (before the actions
   are run).  */

#ifndef YYLLOC_DEFAULT
# define 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

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

#ifdef YYLEX_PARAM
# define YYLEX yylex (YYLEX_PARAM)
#else
# define YYLEX yylex ()
#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 YYDSYMPRINT(Args)			\
do {						\
  if (yydebug)					\
    yysymprint Args;				\
} while (0)

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

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

#if defined (__STDC__) || defined (__cplusplus)
static void
yy_stack_print (short *bottom, short *top)
#else
static void
yy_stack_print (bottom, top)
    short *bottom;
    short *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
static void
yy_reduce_print (yyrule)
    int yyrule;
#endif
{
  int yyi;
  unsigned int yylineno = yyrline[yyrule];
  YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",
             yyrule - 1, yylineno);
  /* Print the symbols being reduced, and their result.  */
  for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
    YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);
  YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);
}

# define YY_REDUCE_PRINT(Rule)		\
do {					\
  if (yydebug)				\
    yy_reduce_print (Rule);		\
} while (0)

/* Nonzero means print parse trace.  It is left uninitialized so that
   multiple parsers can coexist.  */
int yydebug;
#else /* !YYDEBUG */
# define YYDPRINTF(Args)
# define YYDSYMPRINT(Args)
# define YYDSYMPRINTF(Title, Token, Value, Location)
# define YY_STACK_PRINT(Bottom, Top)
# define YY_REDUCE_PRINT(Rule)
#endif /* !YYDEBUG */


/* YYINITDEPTH -- initial size of the parser's stacks.  */
#ifndef	YYINITDEPTH
# define YYINITDEPTH 200
#endif

/* 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 < YYSTACK_BYTES (YYMAXDEPTH)
   evaluated with infinite-precision integer arithmetic.  */

#if YYMAXDEPTH == 0
# undef YYMAXDEPTH
#endif

#ifndef YYMAXDEPTH
# define YYMAXDEPTH 10000
#endif



#if YYERROR_VERBOSE

# ifndef yystrlen
#  if defined (__GLIBC__) && defined (_STRING_H)
#   define yystrlen strlen
#  else
/* Return the length of YYSTR.  */
static YYSIZE_T
#   if defined (__STDC__) || defined (__cplusplus)
yystrlen (const char *yystr)
#   else
yystrlen (yystr)
     const char *yystr;
#   endif
{
  register const char *yys = yystr;

  while (*yys++ != '\0')
    continue;

  return yys - yystr - 1;
}
#  endif
# endif

# ifndef yystpcpy
#  if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
#   define yystpcpy stpcpy
#  else
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
   YYDEST.  */
static char *
#   if defined (__STDC__) || defined (__cplusplus)
yystpcpy (char *yydest, const char *yysrc)
#   else
yystpcpy (yydest, yysrc)
     char *yydest;
     const char *yysrc;
#   endif
{
  register char *yyd = yydest;
  register const char *yys = yysrc;

  while ((*yyd++ = *yys++) != '\0')
    continue;

  return yyd - 1;
}
#  endif
# endif

#endif /* !YYERROR_VERBOSE */



#if YYDEBUG
/*--------------------------------.
| Print this symbol on YYOUTPUT.  |
`--------------------------------*/

#if defined (__STDC__) || defined (__cplusplus)
static void
yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
#else
static void
yysymprint (yyoutput, yytype, yyvaluep)
    FILE *yyoutput;
    int yytype;
    YYSTYPE *yyvaluep;
#endif
{
  /* Pacify ``unused variable'' warnings.  */
  (void) yyvaluep;

  if (yytype < YYNTOKENS)
    {
      YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);

⌨️ 快捷键说明

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