📄 cmdpars.cc
字号:
#define YY_cl_ucsim_parser_h_included#define YY_USE_CLASS/* A Bison++ parser, made from cmdpars.y */ /* with Bison++ version bison++ Version 1.21.9-1, adapted from GNU bison by coetmeur@icdc.frMaintained by Magnus Ekdahl <magnus@debian.org> */#define YY_USE_CLASS#line 1 "/usr/share/bison++/bison.cc"/* -*-C-*- Note some compilers choke on comments on `#line' lines. *//* Skeleton output parser for bison, Copyright (C) 1984, 1989, 1990 Bob Corbett and Richard Stallman 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 1, 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., 675 Mass Ave, Cambridge, MA 02139, 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, and has been in Bison++ since 1.21.9. *//* HEADER SECTION */#if defined( _MSDOS ) || defined(MSDOS) || defined(__MSDOS__) #define __MSDOS_AND_ALIKE#endif#if defined(_WINDOWS) && defined(_MSC_VER) #define __HAVE_NO_ALLOCA #define __MSDOS_AND_ALIKE#endif#ifndef alloca #if defined( __GNUC__) #define alloca __builtin_alloca #elif (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) #include <alloca.h> #elif defined (__MSDOS_AND_ALIKE) #include <malloc.h> #ifndef __TURBOC__ /* MS C runtime lib */ #define alloca _alloca #endif #elif defined(_AIX) /* pragma must be put before any C/C++ instruction !! */ #pragma alloca #include <malloc.h> #elif defined(__hpux) #ifdef __cplusplus extern "C" { void *alloca (unsigned int); }; #else /* not __cplusplus */ void *alloca (); #endif /* not __cplusplus */ #endif /* not _AIX not MSDOS, or __TURBOC__ or _AIX, not sparc. */#endif /* alloca not defined. */#ifdef c_plusplus #ifndef __cplusplus #define __cplusplus #endif#endif#ifdef __cplusplus #ifndef YY_USE_CLASS/*#warning "For C++ its recomended to use bison++, otherwise classes won't be generated"*/ #endif#else #ifndef __STDC__ #define const #endif #ifdef YY_USE_CLASS #error "This is a C++ header generated by bison++, please use a C++ compiler!" #endif#endif#include <stdio.h>#define YYBISON 1 #line 88 "/usr/share/bison++/bison.cc"#line 3 "cmdpars.y"#include "cmdlexcl.h"#include "memcl.h"#include "globals.h"#include "stypes.h"#define YY_cl_ucsim_parser_INHERIT : public cl_base#define YY_cl_ucsim_parser_MEMBERS class cl_ucsim_lexer *lexer_object;\virtual ~YY_cl_ucsim_parser_CLASS(void) { delete lexer_object; }#define YY_cl_ucsim_parser_CONSTRUCTOR_PARAM \class cl_ucsim_lexer *the_lexer#define YY_cl_ucsim_parser_CONSTRUCTOR_CODE \lexer_object= the_lexer;#line 43 "cmdpars.y"typedef union { long number; class cl_memory *memory_object; struct { class cl_memory *memory; long address; } memory; struct { class cl_memory *memory; long mem_address, bit_address; long mask; } bit;} yy_cl_ucsim_parser_stype;#define YY_cl_ucsim_parser_STYPE yy_cl_ucsim_parser_stype#line 88 "/usr/share/bison++/bison.cc"/* %{ and %header{ and %union, during decl */#define YY_cl_ucsim_parser_BISON 1#ifndef YY_cl_ucsim_parser_COMPATIBILITY #ifndef YY_USE_CLASS #define YY_cl_ucsim_parser_COMPATIBILITY 1 #else #define YY_cl_ucsim_parser_COMPATIBILITY 0 #endif#endif#if YY_cl_ucsim_parser_COMPATIBILITY != 0 /* backward compatibility */ #ifdef YYLTYPE #ifndef YY_cl_ucsim_parser_LTYPE #define YY_cl_ucsim_parser_LTYPE YYLTYPE #endif #endif/* Testing alternative bison solution /#ifdef YYSTYPE*/#ifndef YY_cl_ucsim_parser_STYPE #define YY_cl_ucsim_parser_STYPE YYSTYPE#endif/*#endif*/ #ifdef YYDEBUG #ifndef YY_cl_ucsim_parser_DEBUG #define YY_cl_ucsim_parser_DEBUG YYDEBUG #endif #endif /* use goto to be compatible */ #ifndef YY_cl_ucsim_parser_USE_GOTO #define YY_cl_ucsim_parser_USE_GOTO 1 #endif#endif/* use no goto to be clean in C++ */#ifndef YY_cl_ucsim_parser_USE_GOTO #define YY_cl_ucsim_parser_USE_GOTO 0#endif#ifndef YY_cl_ucsim_parser_PURE #line 130 "/usr/share/bison++/bison.cc"#define YY_cl_ucsim_parser_PURE 1#line 130 "/usr/share/bison++/bison.cc"/* YY_cl_ucsim_parser_PURE */#endif/* section apres lecture def, avant lecture grammaire S2 */ #line 134 "/usr/share/bison++/bison.cc"#line 134 "/usr/share/bison++/bison.cc"/* prefix */#ifndef YY_cl_ucsim_parser_DEBUG #line 136 "/usr/share/bison++/bison.cc"#line 136 "/usr/share/bison++/bison.cc"/* YY_cl_ucsim_parser_DEBUG */#endif#ifndef YY_cl_ucsim_parser_LSP_NEEDED #line 141 "/usr/share/bison++/bison.cc"#line 141 "/usr/share/bison++/bison.cc" /* YY_cl_ucsim_parser_LSP_NEEDED*/#endif/* DEFAULT LTYPE*/#ifdef YY_cl_ucsim_parser_LSP_NEEDED#ifndef YY_cl_ucsim_parser_LTYPE#ifndef BISON_YYLTYPE_ISDECLARED#define BISON_YYLTYPE_ISDECLAREDtypedef struct yyltype { int timestamp; int first_line; int first_column; int last_line; int last_column; char *text; } yyltype;#endif#define YY_cl_ucsim_parser_LTYPE yyltype#endif#endif/* DEFAULT STYPE*/ /* We used to use `unsigned long' as YY_cl_ucsim_parser_STYPE on MSDOS, but it seems better to be consistent. Most programs should declare their own type anyway. */#ifndef YY_cl_ucsim_parser_STYPE#define YY_cl_ucsim_parser_STYPE int#endif/* DEFAULT MISCELANEOUS */#ifndef YY_cl_ucsim_parser_PARSE#define YY_cl_ucsim_parser_PARSE yyparse#endif#ifndef YY_cl_ucsim_parser_LEX#define YY_cl_ucsim_parser_LEX yylex#endif#ifndef YY_cl_ucsim_parser_LVAL#define YY_cl_ucsim_parser_LVAL yylval#endif#ifndef YY_cl_ucsim_parser_LLOC#define YY_cl_ucsim_parser_LLOC yylloc#endif#ifndef YY_cl_ucsim_parser_CHAR#define YY_cl_ucsim_parser_CHAR yychar#endif#ifndef YY_cl_ucsim_parser_NERRS#define YY_cl_ucsim_parser_NERRS yynerrs#endif#ifndef YY_cl_ucsim_parser_DEBUG_FLAG#define YY_cl_ucsim_parser_DEBUG_FLAG yydebug#endif#ifndef YY_cl_ucsim_parser_ERROR#define YY_cl_ucsim_parser_ERROR yyerror#endif#ifndef YY_cl_ucsim_parser_PARSE_PARAM #ifndef YY_USE_CLASS #ifdef YYPARSE_PARAM #define YY_cl_ucsim_parser_PARSE_PARAM void* YYPARSE_PARAM #else #ifndef __STDC__ #ifndef __cplusplus #define YY_cl_ucsim_parser_PARSE_PARAM #endif #endif #endif #endif #ifndef YY_cl_ucsim_parser_PARSE_PARAM #define YY_cl_ucsim_parser_PARSE_PARAM void #endif#endif#if YY_cl_ucsim_parser_COMPATIBILITY != 0/* backward compatibility */#ifdef YY_cl_ucsim_parser_LTYPE#ifndef YYLTYPE#define YYLTYPE YY_cl_ucsim_parser_LTYPE#else/* WARNING obsolete !!! user defined YYLTYPE not reported into generated header */#endif#endif/* Removed due to bison compabilityproblems/#ifndef YYSTYPE/#define YYSTYPE YY_cl_ucsim_parser_STYPE/#else*//* WARNING obsolete !!! user defined YYSTYPE not reported into generated header *//*#endif*/#ifdef YY_cl_ucsim_parser_PURE# ifndef YYPURE# define YYPURE YY_cl_ucsim_parser_PURE# endif#endif#ifdef YY_cl_ucsim_parser_DEBUG# ifndef YYDEBUG# define YYDEBUG YY_cl_ucsim_parser_DEBUG # endif#endif#ifndef YY_cl_ucsim_parser_ERROR_VERBOSE #ifdef YYERROR_VERBOSE #define YY_cl_ucsim_parser_ERROR_VERBOSE YYERROR_VERBOSE #endif#endif#ifndef YY_cl_ucsim_parser_LSP_NEEDED# ifdef YYLSP_NEEDED# define YY_cl_ucsim_parser_LSP_NEEDED YYLSP_NEEDED# endif#endif#endif#ifndef YY_USE_CLASS/* TOKEN C */ #line 263 "/usr/share/bison++/bison.cc"#define PTOK_PLUS 258#define PTOK_MINUS 259#define PTOK_ASTERIX 260#define PTOK_SLASH 261#define PTOK_EQUAL 262#define PTOK_LEFT_PAREN 263#define PTOK_RIGHT_PAREN 264#define PTOK_LEFT_BRACKET 265#define PTOK_RIGHT_BRACKET 266#define PTOK_DOT 267#define PTOK_AMPERSAND 268#define PTOK_MEMORY_OBJECT 269#define PTOK_MEMORY 270#define PTOK_NUMBER 271#define PTOK_BIT 272#define UNARYMINUS 273#line 263 "/usr/share/bison++/bison.cc" /* #defines tokens */#else/* CLASS */#ifndef YY_cl_ucsim_parser_CLASS#define YY_cl_ucsim_parser_CLASS cl_ucsim_parser#endif#ifndef YY_cl_ucsim_parser_INHERIT#define YY_cl_ucsim_parser_INHERIT#endif#ifndef YY_cl_ucsim_parser_MEMBERS#define YY_cl_ucsim_parser_MEMBERS #endif#ifndef YY_cl_ucsim_parser_LEX_BODY#define YY_cl_ucsim_parser_LEX_BODY #endif#ifndef YY_cl_ucsim_parser_ERROR_BODY#define YY_cl_ucsim_parser_ERROR_BODY #endif#ifndef YY_cl_ucsim_parser_CONSTRUCTOR_PARAM#define YY_cl_ucsim_parser_CONSTRUCTOR_PARAM#endif#ifndef YY_cl_ucsim_parser_CONSTRUCTOR_CODE#define YY_cl_ucsim_parser_CONSTRUCTOR_CODE#endif#ifndef YY_cl_ucsim_parser_CONSTRUCTOR_INIT#define YY_cl_ucsim_parser_CONSTRUCTOR_INIT#endif/* choose between enum and const */#ifndef YY_cl_ucsim_parser_USE_CONST_TOKEN#define YY_cl_ucsim_parser_USE_CONST_TOKEN 0/* yes enum is more compatible with flex, *//* so by default we use it */ #endif#if YY_cl_ucsim_parser_USE_CONST_TOKEN != 0#ifndef YY_cl_ucsim_parser_ENUM_TOKEN#define YY_cl_ucsim_parser_ENUM_TOKEN yy_cl_ucsim_parser_enum_token#endif#endifclass YY_cl_ucsim_parser_CLASS YY_cl_ucsim_parser_INHERIT{public: #if YY_cl_ucsim_parser_USE_CONST_TOKEN != 0/* static const int token ... */ #line 307 "/usr/share/bison++/bison.cc"static const int PTOK_PLUS;static const int PTOK_MINUS;static const int PTOK_ASTERIX;static const int PTOK_SLASH;static const int PTOK_EQUAL;static const int PTOK_LEFT_PAREN;static const int PTOK_RIGHT_PAREN;static const int PTOK_LEFT_BRACKET;static const int PTOK_RIGHT_BRACKET;static const int PTOK_DOT;static const int PTOK_AMPERSAND;static const int PTOK_MEMORY_OBJECT;static const int PTOK_MEMORY;static const int PTOK_NUMBER;static const int PTOK_BIT;static const int UNARYMINUS;#line 307 "/usr/share/bison++/bison.cc" /* decl const */#elseenum YY_cl_ucsim_parser_ENUM_TOKEN { YY_cl_ucsim_parser_NULL_TOKEN=0 #line 310 "/usr/share/bison++/bison.cc" ,PTOK_PLUS=258 ,PTOK_MINUS=259 ,PTOK_ASTERIX=260 ,PTOK_SLASH=261 ,PTOK_EQUAL=262 ,PTOK_LEFT_PAREN=263 ,PTOK_RIGHT_PAREN=264 ,PTOK_LEFT_BRACKET=265 ,PTOK_RIGHT_BRACKET=266 ,PTOK_DOT=267 ,PTOK_AMPERSAND=268 ,PTOK_MEMORY_OBJECT=269 ,PTOK_MEMORY=270 ,PTOK_NUMBER=271 ,PTOK_BIT=272 ,UNARYMINUS=273#line 310 "/usr/share/bison++/bison.cc" /* enum token */ }; /* end of enum declaration */#endifpublic: int YY_cl_ucsim_parser_PARSE (YY_cl_ucsim_parser_PARSE_PARAM); virtual void YY_cl_ucsim_parser_ERROR(char *msg) YY_cl_ucsim_parser_ERROR_BODY;#ifdef YY_cl_ucsim_parser_PURE#ifdef YY_cl_ucsim_parser_LSP_NEEDED virtual int YY_cl_ucsim_parser_LEX (YY_cl_ucsim_parser_STYPE *YY_cl_ucsim_parser_LVAL,YY_cl_ucsim_parser_LTYPE *YY_cl_ucsim_parser_LLOC) YY_cl_ucsim_parser_LEX_BODY;#else virtual int YY_cl_ucsim_parser_LEX (YY_cl_ucsim_parser_STYPE *YY_cl_ucsim_parser_LVAL) YY_cl_ucsim_parser_LEX_BODY;#endif#else virtual int YY_cl_ucsim_parser_LEX() YY_cl_ucsim_parser_LEX_BODY; YY_cl_ucsim_parser_STYPE YY_cl_ucsim_parser_LVAL;#ifdef YY_cl_ucsim_parser_LSP_NEEDED YY_cl_ucsim_parser_LTYPE YY_cl_ucsim_parser_LLOC;#endif int YY_cl_ucsim_parser_NERRS; int YY_cl_ucsim_parser_CHAR;#endif#if YY_cl_ucsim_parser_DEBUG != 0 int YY_cl_ucsim_parser_DEBUG_FLAG; /* nonzero means print parse trace */#endifpublic: YY_cl_ucsim_parser_CLASS(YY_cl_ucsim_parser_CONSTRUCTOR_PARAM);public: YY_cl_ucsim_parser_MEMBERS };/* other declare folow */#if YY_cl_ucsim_parser_USE_CONST_TOKEN != 0 #line 341 "/usr/share/bison++/bison.cc"const int YY_cl_ucsim_parser_CLASS::PTOK_PLUS=258;const int YY_cl_ucsim_parser_CLASS::PTOK_MINUS=259;const int YY_cl_ucsim_parser_CLASS::PTOK_ASTERIX=260;const int YY_cl_ucsim_parser_CLASS::PTOK_SLASH=261;const int YY_cl_ucsim_parser_CLASS::PTOK_EQUAL=262;const int YY_cl_ucsim_parser_CLASS::PTOK_LEFT_PAREN=263;const int YY_cl_ucsim_parser_CLASS::PTOK_RIGHT_PAREN=264;const int YY_cl_ucsim_parser_CLASS::PTOK_LEFT_BRACKET=265;const int YY_cl_ucsim_parser_CLASS::PTOK_RIGHT_BRACKET=266;const int YY_cl_ucsim_parser_CLASS::PTOK_DOT=267;const int YY_cl_ucsim_parser_CLASS::PTOK_AMPERSAND=268;const int YY_cl_ucsim_parser_CLASS::PTOK_MEMORY_OBJECT=269;const int YY_cl_ucsim_parser_CLASS::PTOK_MEMORY=270;const int YY_cl_ucsim_parser_CLASS::PTOK_NUMBER=271;const int YY_cl_ucsim_parser_CLASS::PTOK_BIT=272;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -