/* A Bison parser, made by GNU Bison 2.0. */
/* Skeleton parser for Yacc-like parsing with Bison,
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 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. */
/* Written by Richard Stallman by simplifying the original so called
``semantic'' parser. */
/* All symbols defined below should begin with yy or YY, to avoid
infringing on user name space. This should be done even for local
variables, as they might otherwise be expanded by user macros.
There are some unavoidable exceptions within include files to
define necessary library symbols; they are noted "INFRINGES ON
USER NAME SPACE" below. */
/* Identify Bison output. */
#define YYBISON 1
/* Skeleton name. */
#define YYSKELETON_NAME "yaxx.c"
/* Pure parsers. */
#define YYPURE 0
/* Using locations. */
#define YYLSP_NEEDED 0
/* If NAME_PREFIX is specified substitute the variables and functions
names. */
#define yyparse yyparse
#define yylex yylex
#define yyerror yyerror
#define yylval yylval
#define yytext yytext
#define YYYAXX_XML "yyyaxx.xml"
#define YYYAXX_DTD "yyyaxx.dtd"
#define yychar yychar
#define yydebug yydebug
#define yynerrs yynerrs
/* Tokens. */
#ifndef YYTOKENTYPE
# define YYTOKENTYPE
/* Put the tokens into the symbol table, so that GDB and other debuggers
know about them. */
enum yytokentype {
NUM = 258,
XIDENT = 259,
SYSTEM = 260,
INTERFACE = 261,
IMPLEMENTATION = 262,
IF = 263,
ELSE = 264,
THEN = 265,
STATE = 266,
INPUT = 267,
OUTPUT = 268,
PARAMETER = 269,
MODULE = 270,
AUX = 271,
AD = 272,
DA = 273,
CONTINUOUS = 274,
AUTOMATA = 275,
MUST = 276,
LOGIC = 277,
LINEAR = 278,
REAL = 279,
BOOL = 280,
INDEX = 281,
TRUE = 282,
FALSE = 283,
EXP = 284,
SQRT = 285,
SIN = 286,
COS = 287,
TAN = 288,
LOG = 289,
LOG10 = 290,
LOG2 = 291,
ABS = 292,
NORM_1 = 293,
NORM_INF = 294,
TRANSPOSE = 295,
SUM = 296,
ALL = 297,
ANY = 298,
INF = 299,
FOR = 300,
FLOOR = 301,
CEIL = 302,
ROUND = 303,
LE = 304,
leq = 305,
GE = 306,
geq = 307,
NE = 308,
neq = 309,
EQ = 310,
eq = 311,
AR_FI = 312,
AR_IF = 313,
AR_IFF = 314,
E_PROD = 315,
E_DIV = 316,
E_POW = 317,
OR = 318,
or = 319,
AND = 320,
and = 321,
UNARY = 322,
SCAL = 328
};
#endif
#define NUM 258
#define XIDENT 259
#define SYSTEM 260
#define INTERFACE 261
#define IMPLEMENTATION 262
#define IF 263
#define ELSE 264
#define THEN 265
#define STATE 266
#define INPUT 267
#define OUTPUT 268
#define PARAMETER 269
#define MODULE 270
#define AUX 271
#define AD 272
#define DA 273
#define CONTINUOUS 274
#define AUTOMATA 275
#define MUST 276
#define LOGIC 277
#define LINEAR 278
#define REAL 279
#define BOOL 280
#define INDEX 281
#define TRUE 282
#define FALSE 283
#define EXP 284
#define SQRT 285
#define SIN 286
#define COS 287
#define TAN 288
#define LOG 289
#define LOG10 290
#define LOG2 291
#define ABS 292
#define NORM_1 293
#define NORM_INF 294
#define TRANSPOSE 295
#define SUM 296
#define ALL 297
#define ANY 298
#define INF 299
#define FOR 300
#define FLOOR 301
#define CEIL 302
#define ROUND 303
#define LE 304
#define leq 305
#define GE 306
#define geq 307
#define NE 308
#define neq 309
#define EQ 310
#define eq 311
#define AR_FI 312
#define AR_IF 313
#define AR_IFF 314
#define E_PROD 315
#define E_DIV 316
#define E_POW 317
#define OR 318
#define or 319
#define AND 320
#define and 321
#define UNARY 322
#define SCAL 328
/* Copy the first part of user declarations. */
#line 1 "hys.y"
/** yylex is called from the pure_parser. It cannot be a method. */
/* int yylex (YYSTYPE *lvalp, struct yyltype *llocp, lexer_input *l_in); */
#define YYERROR_VERBOSE
//#define yyerror(msg) yysmarterror(msg,yylloc.first_line)
#include <stdio.h>
//void yysmarterror(const char * s, int line) {
// printf("line %d: %s\n", line, s);
//}
/* Enabling traces. */
#ifndef YYDEBUG
# define YYDEBUG 0
#endif
/* Enabling verbose error messages. */
#ifdef YYERROR_VERBOSE
# undef YYERROR_VERBOSE
# define YYERROR_VERBOSE 1
#else
# define YYERROR_VERBOSE 0
#endif
#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
#line 16 "hys.y"
typedef union YYSTYPE {
int ival;
double dval;
char *sval;
void *vval;
} YYSTYPE;
/* Line 193 of yacc.c. */
#line 246 "hys.tab.c"
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1
#endif
/* Copy the second part of user declarations. */
/* Line 216 of yacc.c. */
#line 258 "hys.tab.c"
#if ! defined (yyoverflow) || YYERROR_VERBOSE
/* The parser invokes alloca or malloc; define the necessary symbols. */
# define XML_ALLOC(X) malloc(X)
# define XML_FREE(X) free(X)
# if YYSTACK_USE_ALLOCA
# define YYSTACK_ALLOC alloca
# else
# ifndef YYSTACK_USE_ALLOCA
# if defined (alloca) || defined (_ALLOCA_H)
# define YYSTACK_ALLOC alloca
# else
# ifdef __GNUC__
# define YYSTACK_ALLOC __builtin_alloca
# endif
# endif
# endif
# endif
# ifdef YYSTACK_ALLOC
/* Pacify GCC's `empty if-body' warning. */
# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
# else
# if defined (__STDC__) || defined (__cplusplus)
# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
# define YYSIZE_T size_t
# endif
# define YYSTACK_ALLOC malloc
# define YYSTACK_FREE free
# endif
#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
#if (! defined (yyoverflow) \
&& (! defined (__cplusplus) \
|| (YYSTYPE_IS_TRIVIAL)))
/* A type that is properly aligned for any stack member. */
union yyalloc
{
short yyss;
char *yyxs; // Yijun Yu: for XML
YYSTYPE yyvs;
};
/* The size of the maximum gap between one aligned stack and the next. */
# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
// Yijun Yu: for yyxs
/* The size of an array large to enough to hold all stacks, each with
N elements. */
# define YYSTACK_BYTES(N) \
((N) * (sizeof (short) + sizeof (YYSTYPE)) \
+ sizeof(char *) \
+ YYSTACK_GAP_MAXIMUM)
/* Copy COUNT objects from FROM to TO. The source and destination do
not overlap. */
# ifndef YYCOPY
# if 1 < __GNUC__
# define YYCOPY(To, From, Count) \
__builtin_memcpy (To, From, (Count) * sizeof (*(From)))
# else
# define YYCOPY(To, From, Count) \
do \
{ \
register YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(To)[yyi] = (From)[yyi]; \
} \
while (0)
# endif
# endif
/* Relocate STACK from its old location to the new one. The
local variables YYSIZE and YYSTACKSIZE give the old and new number of
elements in the stack, and YYPTR gives the new location of the
stack. Advance YYPTR to a properly aligned location for the next
stack. */
# define YYSTACK_RELOCATE(Stack) \
do \
{
没有合适的资源?快使用搜索试试~ 我知道了~
hysdel3.zip_HL3_HYSDEL3.0_MOKN_hysdel3_混杂系统
共1286个文件
m:1136个
hys:104个
c:8个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 5 下载量 16 浏览量
2022-07-14
19:51:40
上传
评论 2
收藏 1.41MB ZIP 举报
温馨提示
HYSDEL 3 版本,这是HYSDEL的最新版本,用于描述混杂系统的语言。
资源详情
资源评论
资源推荐
收起资源包目录
hysdel3.zip_HL3_HYSDEL3.0_MOKN_hysdel3_混杂系统 (1286个子文件)
ncvar.asv 22KB
mtimes.asv 5KB
hys.tab.c 124KB
lex.yy.c 63KB
yaxx.c 40KB
xml_findstr.c 3KB
sub_allchildren.c 2KB
findhash.c 1KB
xml_cell_find.c 773B
hys2xml.c 38B
xml_findstr.dll 7KB
sub_allchildren.dll 7KB
xml_cell_find.dll 6KB
hys2xml.exe 64KB
hys2xml_w32.exe 64KB
hys2xml_w64.exe 57KB
hys.tab.h 4KB
clio.hys 3KB
mpc_pwa.hys 2KB
mpc_pwa.hys 2KB
three_tanks.hys 2KB
three_tanks.hys 2KB
three_tanks.hys 2KB
mpc_lti.hys 1KB
reaktormasik.hys 1KB
test031.hys 967B
pwa_car.hys 791B
test0051b.hys 686B
test010.hys 685B
test0052.hys 666B
test041b.hys 650B
test041.hys 647B
turbo_car.hys 600B
turbo_car.hys 600B
test043d.hys 595B
test030.hys 589B
test020.hys 568B
turbo_car.hys 561B
test043c.hys 559B
test0051.hys 556B
test040b.hys 554B
test043b.hys 529B
pwa3d.hys 527B
test040c.hys 512B
test043a.hys 492B
test005.hys 485B
da_vector_001.hys 478B
pyramide_master1.hys 458B
pyramide_master2.hys 457B
da_pass_002.hys 449B
test040a.hys 446B
two_tanks.hys 443B
two_tanks.hys 443B
da_pass_001.hys 428B
da_pass_003.hys 428B
bool_pwa.hys 416B
test045b.hys 409B
two_tanks_master.hys 388B
pwa_sincos.hys 387B
da_vector_002.hys 376B
for_indexing_001.hys 354B
t1.hys 342B
t1.hys 340B
test045a.hys 336B
single_tank.hys 336B
two_tanks_master.hys 311B
four_tanks_master.hys 309B
two_tanks_master.hys 303B
t2.hys 300B
two_tanks.hys 300B
da_param_001.hys 292B
single_tank.hys 291B
single_tank.hys 275B
two_tanks.hys 266B
constraints_002.hys 251B
da_param_002.hys 246B
constraints_003.hys 238B
da_pass_007.hys 218B
param_pass_005.hys 207B
da_pass_005.hys 202B
ad_pass_007.hys 199B
ad_pass_006.hys 194B
da_pass_006.hys 194B
param_pass_007.hys 192B
param_pass_011.hys 182B
param_pass_008.hys 182B
param_pass_009.hys 181B
param_pass_006.hys 181B
param_pass_004.hys 180B
param_pass_010.hys 178B
param_pass_002.hys 176B
param_pass_003.hys 165B
linear_pass_003.hys 164B
constraints_001.hys 163B
ad_pass_005.hys 162B
param_pass_001.hys 161B
automata_pass_002.hys 156B
must_pass_009.hys 153B
linear_pass_002.hys 151B
ad_pass_001.hys 151B
共 1286 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
我虽横行却不霸道
- 粉丝: 77
- 资源: 1万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论5