Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

parser.cc File Reference

#include "libparser.hh"
#include "lexer.cc"

Namespaces

namespace  std

Defines

#define YYBISON   1
#define YYSKELETON_NAME   "yacc.c"
#define YYPURE   0
#define YYLSP_NEEDED   1
#define yyparse   utap_parse
#define yylex   utap_lex
#define yyerror   utap_error
#define yylval   utap_lval
#define yychar   utap_char
#define yydebug   utap_debug
#define yynerrs   utap_nerrs
#define yylloc   utap_lloc
#define T_ASSIGNMENT   258
#define T_ASSPLUS   259
#define T_ASSMINUS   260
#define T_ASSMULT   261
#define T_ASSDIV   262
#define T_ASSMOD   263
#define T_ASSOR   264
#define T_ASSAND   265
#define T_ASSXOR   266
#define T_ASSLSHIFT   267
#define T_ASSRSHIFT   268
#define T_EXCLAM   269
#define T_INCREMENT   270
#define T_DECREMENT   271
#define T_PLUS   272
#define T_MINUS   273
#define T_MULT   274
#define T_DIV   275
#define T_MIN   276
#define T_MAX   277
#define T_MOD   278
#define T_OR   279
#define T_XOR   280
#define T_LSHIFT   281
#define T_RSHIFT   282
#define T_BOOL_AND   283
#define T_BOOL_OR   284
#define T_KW_AND   285
#define T_KW_OR   286
#define T_KW_IMPLY   287
#define T_KW_NOT   288
#define T_LT   289
#define T_LEQ   290
#define T_EQ   291
#define T_NEQ   292
#define T_GEQ   293
#define T_GT   294
#define T_FOR   295
#define T_WHILE   296
#define T_DO   297
#define T_BREAK   298
#define T_CONTINUE   299
#define T_SWITCH   300
#define T_IF   301
#define T_ELSE   302
#define T_CASE   303
#define T_DEFAULT   304
#define T_RETURN   305
#define T_TYPEDEF   306
#define T_STRUCT   307
#define T_CONST   308
#define T_OLDCONST   309
#define T_URGENT   310
#define T_BROADCAST   311
#define T_TRUE   312
#define T_FALSE   313
#define T_SYSTEM   314
#define T_PROCESS   315
#define T_STATE   316
#define T_COMMIT   317
#define T_INIT   318
#define T_TRANS   319
#define T_ARROW   320
#define T_GUARD   321
#define T_SYNC   322
#define T_ASSIGN   323
#define T_RATE   324
#define T_BEFORE   325
#define T_AFTER   326
#define T_COST   327
#define T_DEADLOCK   328
#define T_EF   329
#define T_EG   330
#define T_AF   331
#define T_AG   332
#define T_LEADSTO   333
#define T_QUIT   334
#define T_ERROR   335
#define T_ID   336
#define T_TYPENAME   337
#define T_NAT   338
#define T_NEW   339
#define T_NEW_DECLARATION   340
#define T_NEW_LOCAL_DECL   341
#define T_NEW_INST   342
#define T_NEW_SYSTEM   343
#define T_NEW_PARAMETERS   344
#define T_NEW_INVARIANT   345
#define T_NEW_GUARD   346
#define T_NEW_SYNC   347
#define T_NEW_ASSIGN   348
#define T_OLD   349
#define T_OLD_DECLARATION   350
#define T_OLD_LOCAL_DECL   351
#define T_OLD_INST   352
#define T_OLD_PARAMETERS   353
#define T_OLD_INVARIANT   354
#define T_OLD_GUARD   355
#define T_OLD_ASSIGN   356
#define T_PROPERTY   357
#define UOPERATOR   358
#define YYLTYPE   Position
#define REPORT_ERROR(loc, exc)   utap_error(exc, loc.first_line, loc.first_column, loc.last_line, loc.last_column);
#define YYERROR_VERBOSE   1
#define CALL(first, last, call)   do { errorHandler->setCurrentPosition(first.first_line, first.first_column, last.last_line, last.last_column); ch->setPosition(position_t(first.first_line, first.first_column, last.last_line, last.last_column)); try { ch->call; } catch (TypeException &te) { errorHandler->handleError(te.what()); } } while (0)
#define YYDEBUG   0
#define YYERROR_VERBOSE   1
#define yystype   YYSTYPE /* obsolescent; will be withdrawn */
#define YYSTYPE_IS_DECLARED   1
#define YYSTYPE_IS_TRIVIAL   1
#define YYSTACK_ALLOC   malloc
#define YYSTACK_FREE   free
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
#define YYSTACK_BYTES(N)
#define YYCOPY(To, From, Count)
#define YYSTACK_RELOCATE(Stack)
#define YYFINAL   74
#define YYLAST   2904
#define YYNTOKENS   117
#define YYNNTS   122
#define YYNRULES   416
#define YYNSTATES   753
#define YYUNDEFTOK   2
#define YYMAXUTOK   358
#define YYTRANSLATE(YYX)   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
#define YYPACT_NINF   -595
#define YYTABLE_NINF   -377
#define YYSIZE_T   unsigned int
#define yyerrok   (yyerrstatus = 0)
#define yyclearin   (yychar = YYEMPTY)
#define YYEMPTY   (-2)
#define YYEOF   0
#define YYACCEPT   goto yyacceptlab
#define YYABORT   goto yyabortlab
#define YYERROR
#define YYFAIL   goto yyerrlab
#define YYRECOVERING()   (!!yyerrstatus)
#define YYBACKUP(Token, Value)
#define YYTERROR   1
#define YYERRCODE   256
#define YYLLOC_DEFAULT(Current, Rhs, N)
#define YYLEX   yylex ()
#define YYDPRINTF(Args)
#define YYDSYMPRINT(Args)
#define YYDSYMPRINTF(Title, Token, Value, Location)
#define YY_STACK_PRINT(Bottom, Top)
#define YY_REDUCE_PRINT(Rule)
#define YYINITDEPTH   200
#define YYMAXDEPTH   10000
#define YYPOPSTACK   (yyvsp--, yyssp--, yylsp--)

Typedefs

typedef YYSTYPE YYSTYPE
typedef short yysigned_char

Enumerations

enum  yytokentype {
  T_ASSIGNMENT = 258, T_ASSPLUS = 259, T_ASSMINUS = 260, T_ASSMULT = 261,
  T_ASSDIV = 262, T_ASSMOD = 263, T_ASSOR = 264, T_ASSAND = 265,
  T_ASSXOR = 266, T_ASSLSHIFT = 267, T_ASSRSHIFT = 268, T_EXCLAM = 269,
  T_INCREMENT = 270, T_DECREMENT = 271, T_PLUS = 272, T_MINUS = 273,
  T_MULT = 274, T_DIV = 275, T_MIN = 276, T_MAX = 277,
  T_MOD = 278, T_OR = 279, T_XOR = 280, T_LSHIFT = 281,
  T_RSHIFT = 282, T_BOOL_AND = 283, T_BOOL_OR = 284, T_KW_AND = 285,
  T_KW_OR = 286, T_KW_IMPLY = 287, T_KW_NOT = 288, T_LT = 289,
  T_LEQ = 290, T_EQ = 291, T_NEQ = 292, T_GEQ = 293,
  T_GT = 294, T_FOR = 295, T_WHILE = 296, T_DO = 297,
  T_BREAK = 298, T_CONTINUE = 299, T_SWITCH = 300, T_IF = 301,
  T_ELSE = 302, T_CASE = 303, T_DEFAULT = 304, T_RETURN = 305,
  T_TYPEDEF = 306, T_STRUCT = 307, T_CONST = 308, T_OLDCONST = 309,
  T_URGENT = 310, T_BROADCAST = 311, T_TRUE = 312, T_FALSE = 313,
  T_SYSTEM = 314, T_PROCESS = 315, T_STATE = 316, T_COMMIT = 317,
  T_INIT = 318, T_TRANS = 319, T_ARROW = 320, T_GUARD = 321,
  T_SYNC = 322, T_ASSIGN = 323, T_RATE = 324, T_BEFORE = 325,
  T_AFTER = 326, T_COST = 327, T_DEADLOCK = 328, T_EF = 329,
  T_EG = 330, T_AF = 331, T_AG = 332, T_LEADSTO = 333,
  T_QUIT = 334, T_ERROR = 335, T_ID = 336, T_TYPENAME = 337,
  T_NAT = 338, T_NEW = 339, T_NEW_DECLARATION = 340, T_NEW_LOCAL_DECL = 341,
  T_NEW_INST = 342, T_NEW_SYSTEM = 343, T_NEW_PARAMETERS = 344, T_NEW_INVARIANT = 345,
  T_NEW_GUARD = 346, T_NEW_SYNC = 347, T_NEW_ASSIGN = 348, T_OLD = 349,
  T_OLD_DECLARATION = 350, T_OLD_LOCAL_DECL = 351, T_OLD_INST = 352, T_OLD_PARAMETERS = 353,
  T_OLD_INVARIANT = 354, T_OLD_GUARD = 355, T_OLD_ASSIGN = 356, T_PROPERTY = 357,
  UOPERATOR = 358
}

Functions

std::ostream & operator<< (std::ostream &out, const position_t &loc)
void utap_error (const char *msg)
void utap_error (const TypeException &te, int32_t fl, int32_t fc, int32_t ll, int32_t lc)
int lexer_flex ()
int utap_lex ()
YYSIZE_T yystrlen (yystr) const char *yystr
int yyparse ()
int32_t parseXTA (const char *str, ParserBuilder *aParserBuilder, ErrorHandler *err, bool newxta)
 Parse a buffer in the XTA format, reporting the system to the given implementation of the the ParserBuilder interface and reporting errors to the ErrorHandler.

int32_t parseXTA (const char *str, ParserBuilder *aParserBuilder, ErrorHandler *err, bool newxta, xta_part_t part)
int32_t parseXTA (FILE *file, ParserBuilder *aParserBuilder, ErrorHandler *err, bool newxta)
 Parse a file in the XTA format, reporting the system to the given implementation of the the ParserBuilder interface and reporting errors to the ErrorHandler.

int32_t parseXTA (FILE *file, ParserBuilder *aParserBuilder, ErrorHandler *err, bool newxta, xta_part_t part)
int32_t parseProperty (const char *str, ParserBuilder *aParserBuilder, ErrorHandler *err)
 Parse properties from a buffer.

int32_t parseProperty (FILE *file, ParserBuilder *aParserBuilder, ErrorHandler *err)
 Parse properties from a file.


Variables

YYLTYPE last_loc
ErrorHandlererrorHandler
ParserBuilderch
syntax_t syntax
int syntax_token = 0
const char * PE_ALT_TRANS = "alternative transition expected"
const char * PE_ARGLIST = "argument expression list expected"
const char * PE_ARGLIST_ = "one more argument expression expected"
const char * PE_ARROW = "'->' expected"
const char * PE_ASSIGN = "'=' expected"
const char * PE_ASSIGN_EXP = "assignment expression expected"
const char * PE_BANG = "'!' expected"
const char * PE_BANGQUE = "'!' or '?' expected"
const char * PE_COLON = "':' expected"
const char * PE_CONST_EXP = "constant expression expected"
const char * PE_EXPR = "expression expected"
const char * PE_GUARD_EXP = "guard expression expected"
const char * PE_GUARD_EXP_ = "one more guard expression expected"
const char * PE_INIT = "'init' expected"
const char * PE_INITIAL = "initialiser expected"
const char * PE_INV = "invariant expression expected"
const char * PE_LBRACE = "'{' expected"
const char * PE_LBRACES = "'(' or '{' expected"
const char * PE_LOC_DECL = "location declaration expected"
const char * PE_LPAREN = "'(' expected"
const char * PE_MEMBER = "member declarations expected"
const char * PE_MEMBERID = "member identifier expected"
const char * PE_MEMBERID_ = "one more member identifier expected"
const char * PE_MEMBERTYPE = "member type identifier expected"
const char * PE_PARAM_DECL_ = "one more parameter declaration expected"
const char * PE_PARAMETERS = "parameters expected"
const char * PE_PARAMETERS_ = "one more parameter expected"
const char * PE_PARAMID = "parameter identifier expected"
const char * PE_PROCID = "process identifiers expected"
const char * PE_PROCID_ = "one more process identifier expected"
const char * PE_QUE = "'?' expected"
const char * PE_RBRACE = "'}' expected"
const char * PE_RPAREN = "')' expected"
const char * PE_RSQBRACE = "']' expected"
const char * PE_SEMICOLON = "';' expected"
const char * PE_STATE = "'state' expected"
const char * PE_STATE_DECL = "state declaration expected"
const char * PE_STATE_DECL_ = "one more state declaration expected"
const char * PE_STATEID = "state identifier expected"
const char * PE_STATEID_ = "one more state identifier expected"
const char * PE_SYNC_EXP = "synchronization expression expected"
const char * PE_SYSTEM = "'system' expected"
const char * PE_TRANS = "'trans' expected"
const char * PE_TRANS_DECL = "transition declaration expected"
const char * PE_TRANS_DECL_ = "one more transition declaration expected"
const char * PE_TYPE_DEF = "type definition expected"
const char * PE_TYPEID = "type identifier expected"
const char * PE_TYPEID_ = "one more type identifier expected"
const char * PE_VARID = "variable identifier expected"
char rootTransId [MAXLEN]
int32_t g_parameter_count
const unsigned char yytranslate []
const char *const yytname []
const unsigned char yyr1 []
const unsigned char yyr2 []
const unsigned short yydefact []
const short yydefgoto []
const short yypact []
const short yypgoto []
const short yytable []
const short yycheck []
const unsigned char yystos []
const char * yysrc
YYSTYPEyyvaluep
YYLTYPE * yylocationp
int yychar
YYSTYPE yylval
int yynerrs
YYLTYPE yylloc

Define Documentation

#define CALL first,
last,
call   )     do { errorHandler->setCurrentPosition(first.first_line, first.first_column, last.last_line, last.last_column); ch->setPosition(position_t(first.first_line, first.first_column, last.last_line, last.last_column)); try { ch->call; } catch (TypeException &te) { errorHandler->handleError(te.what()); } } while (0)
 

#define REPORT_ERROR loc,
exc   )     utap_error(exc, loc.first_line, loc.first_column, loc.last_line, loc.last_column);
 

#define T_AF   331
 

#define T_AFTER   326
 

#define T_AG   332
 

#define T_ARROW   320
 

#define T_ASSAND   265
 

#define T_ASSDIV   262
 

#define T_ASSIGN   323
 

#define T_ASSIGNMENT   258
 

#define T_ASSLSHIFT   267
 

#define T_ASSMINUS   260
 

#define T_ASSMOD   263
 

#define T_ASSMULT   261
 

#define T_ASSOR   264
 

#define T_ASSPLUS   259
 

#define T_ASSRSHIFT   268
 

#define T_ASSXOR   266
 

#define T_BEFORE   325
 

#define T_BOOL_AND   283
 

#define T_BOOL_OR   284
 

#define T_BREAK   298
 

#define T_BROADCAST   311
 

#define T_CASE   303
 

#define T_COMMIT   317
 

#define T_CONST   308
 

#define T_CONTINUE   299
 

#define T_COST   327
 

#define T_DEADLOCK   328
 

#define T_DECREMENT   271
 

#define T_DEFAULT   304
 

#define T_DIV   275
 

#define T_DO   297
 

#define T_EF   329
 

#define T_EG   330
 

#define T_ELSE   302
 

#define T_EQ   291
 

#define T_ERROR   335
 

#define T_EXCLAM   269
 

#define T_FALSE   313
 

#define T_FOR   295
 

#define T_GEQ   293
 

#define T_GT   294
 

#define T_GUARD   321
 

#define T_ID   336
 

#define T_IF   301
 

#define T_INCREMENT   270
 

#define T_INIT   318
 

#define T_KW_AND   285
 

#define T_KW_IMPLY   287
 

#define T_KW_NOT   288
 

#define T_KW_OR   286
 

#define T_LEADSTO   333
 

#define T_LEQ   290
 

#define T_LSHIFT   281
 

#define T_LT   289
 

#define T_MAX   277
 

#define T_MIN   276
 

#define T_MINUS   273
 

#define T_MOD   278
 

#define T_MULT   274
 

#define T_NAT   338
 

#define T_NEQ   292
 

#define T_NEW   339
 

#define T_NEW_ASSIGN   348
 

#define T_NEW_DECLARATION   340
 

#define T_NEW_GUARD   346
 

#define T_NEW_INST   342
 

#define T_NEW_INVARIANT   345
 

#define T_NEW_LOCAL_DECL   341
 

#define T_NEW_PARAMETERS   344
 

#define T_NEW_SYNC   347
 

#define T_NEW_SYSTEM   343
 

#define T_OLD   349
 

#define T_OLD_ASSIGN   356
 

#define T_OLD_DECLARATION   350
 

#define T_OLD_GUARD   355
 

#define T_OLD_INST   352
 

#define T_OLD_INVARIANT   354
 

#define T_OLD_LOCAL_DECL   351
 

#define T_OLD_PARAMETERS   353
 

#define T_OLDCONST   309
 

#define T_OR   279
 

#define T_PLUS   272
 

#define T_PROCESS   315
 

#define T_PROPERTY   357
 

#define T_QUIT   334
 

#define T_RATE   324
 

#define T_RETURN   305
 

#define T_RSHIFT   282
 

#define T_STATE   316
 

#define T_STRUCT   307
 

#define T_SWITCH   300
 

#define T_SYNC   322
 

#define T_SYSTEM   314
 

#define T_TRANS   319
 

#define T_TRUE   312
 

#define T_TYPEDEF   306
 

#define T_TYPENAME   337
 

#define T_URGENT   310
 

#define T_WHILE   296
 

#define T_XOR   280
 

#define UOPERATOR   358
 

#define YY_REDUCE_PRINT Rule   ) 
 

#define YY_STACK_PRINT Bottom,
Top   ) 
 

#define YYABORT   goto yyabortlab
 

#define YYACCEPT   goto yyacceptlab
 

#define YYBACKUP Token,
Value   ) 
 

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 YYBISON   1
 

#define yychar   utap_char
 

#define yyclearin   (yychar = YYEMPTY)
 

#define YYCOPY To,
From,
Count   ) 
 

Value:

do \ { \ register YYSIZE_T yyi; \ for (yyi = 0; yyi < (Count); yyi++) \ (To)[yyi] = (From)[yyi]; \ } \ while (0)

#define YYDEBUG   0
 

#define yydebug   utap_debug
 

#define YYDPRINTF Args   ) 
 

#define YYDSYMPRINT Args   ) 
 

#define YYDSYMPRINTF Title,
Token,
Value,
Location   ) 
 

#define YYEMPTY   (-2)
 

#define YYEOF   0
 

#define YYERRCODE   256
 

#define yyerrok   (yyerrstatus = 0)
 

#define YYERROR
 

Value:

do \ { \ yylerrsp = yylsp; \ *++yylerrsp = yyloc; \ goto yyerrlab1; \ } \ while (0)

#define yyerror   utap_error
 

#define YYERROR_VERBOSE   1
 

#define YYERROR_VERBOSE   1
 

#define YYFAIL   goto yyerrlab
 

#define YYFINAL   74
 

#define YYINITDEPTH   200
 

#define YYLAST   2904
 

#define YYLEX   yylex ()
 

#define yylex   utap_lex
 

#define yylloc   utap_lloc
 

#define YYLLOC_DEFAULT Current,
Rhs,
 ) 
 

Value:

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;

#define YYLSP_NEEDED   1
 

#define YYLTYPE   Position
 

#define yylval   utap_lval
 

#define YYMAXDEPTH   10000
 

#define YYMAXUTOK   358
 

#define yynerrs   utap_nerrs
 

#define YYNNTS   122
 

#define YYNRULES   416
 

#define YYNSTATES   753
 

#define YYNTOKENS   117
 

#define YYPACT_NINF   -595
 

#define yyparse   utap_parse
 

#define YYPOPSTACK   (yyvsp--, yyssp--, yylsp--)
 

#define YYPURE   0
 

 
#define YYRECOVERING  )     (!!yyerrstatus)
 

#define YYSIZE_T   unsigned int
 

#define YYSKELETON_NAME   "yacc.c"
 

#define YYSTACK_ALLOC   malloc
 

#define YYSTACK_BYTES  ) 
 

Value:

((N) * (sizeof (short) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ + 2 * YYSTACK_GAP_MAXIMUM)

#define YYSTACK_FREE   free
 

#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
 

#define YYSTACK_RELOCATE Stack   ) 
 

Value:

do \ { \ YYSIZE_T yynewbytes; \ YYCOPY (&yyptr->Stack, Stack, yysize); \ Stack = &yyptr->Stack; \ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ yyptr += yynewbytes / sizeof (*yyptr); \ } \ while (0)

#define yystype   YYSTYPE /* obsolescent; will be withdrawn */
 

#define YYSTYPE_IS_DECLARED   1
 

#define YYSTYPE_IS_TRIVIAL   1
 

#define YYTABLE_NINF   -377
 

#define YYTERROR   1
 

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

#define YYUNDEFTOK   2
 


Typedef Documentation

typedef short yysigned_char
 

typedef union YYSTYPE YYSTYPE
 


Enumeration Type Documentation

enum yytokentype
 

Enumeration values:
T_ASSIGNMENT 
T_ASSPLUS 
T_ASSMINUS 
T_ASSMULT 
T_ASSDIV 
T_ASSMOD 
T_ASSOR 
T_ASSAND 
T_ASSXOR 
T_ASSLSHIFT 
T_ASSRSHIFT 
T_EXCLAM 
T_INCREMENT 
T_DECREMENT 
T_PLUS 
T_MINUS 
T_MULT 
T_DIV 
T_MIN 
T_MAX 
T_MOD 
T_OR 
T_XOR 
T_LSHIFT 
T_RSHIFT 
T_BOOL_AND 
T_BOOL_OR 
T_KW_AND 
T_KW_OR 
T_KW_IMPLY 
T_KW_NOT 
T_LT 
T_LEQ 
T_EQ 
T_NEQ 
T_GEQ 
T_GT 
T_FOR 
T_WHILE 
T_DO 
T_BREAK 
T_CONTINUE 
T_SWITCH 
T_IF 
T_ELSE 
T_CASE 
T_DEFAULT 
T_RETURN 
T_TYPEDEF 
T_STRUCT 
T_CONST 
T_OLDCONST 
T_URGENT 
T_BROADCAST 
T_TRUE 
T_FALSE 
T_SYSTEM 
T_PROCESS 
T_STATE 
T_COMMIT 
T_INIT 
T_TRANS 
T_ARROW 
T_GUARD 
T_SYNC 
T_ASSIGN 
T_RATE 
T_BEFORE 
T_AFTER 
T_COST 
T_DEADLOCK 
T_EF 
T_EG 
T_AF 
T_AG 
T_LEADSTO 
T_QUIT 
T_ERROR 
T_ID 
T_TYPENAME 
T_NAT 
T_NEW 
T_NEW_DECLARATION 
T_NEW_LOCAL_DECL 
T_NEW_INST 
T_NEW_SYSTEM 
T_NEW_PARAMETERS 
T_NEW_INVARIANT 
T_NEW_GUARD 
T_NEW_SYNC 
T_NEW_ASSIGN 
T_OLD 
T_OLD_DECLARATION 
T_OLD_LOCAL_DECL 
T_OLD_INST 
T_OLD_PARAMETERS 
T_OLD_INVARIANT 
T_OLD_GUARD 
T_OLD_ASSIGN 
T_PROPERTY 
UOPERATOR 


Function Documentation

int lexer_flex  )  [static]
 

std::ostream& operator<< std::ostream &  out,
const position_t loc
 

int32_t parseProperty FILE *  ,
UTAP::ParserBuilder aParserBuilder,
UTAP::ErrorHandler
 

Parse properties from a file.

The properties are reported using the given ParserBuilder and errors are reported using the ErrorHandler.

int32_t parseProperty const char *  str,
UTAP::ParserBuilder aParserBuilder,
UTAP::ErrorHandler
 

Parse properties from a buffer.

The properties are reported using the given ParserBuilder and errors are reported using the ErrorHandler.

int32_t parseXTA FILE *  file,
ParserBuilder aParserBuilder,
ErrorHandler err,
bool  newxta,
xta_part_t  part
 

int32_t parseXTA FILE *  ,
UTAP::ParserBuilder ,
UTAP::ErrorHandler ,
bool  newxta
 

Parse a file in the XTA format, reporting the system to the given implementation of the the ParserBuilder interface and reporting errors to the ErrorHandler.

If newxta is true, then the 4.x syntax is used; otherwise the 3.x syntax is used. On success, this function returns with a positive value.

int32_t parseXTA const char *  str,
ParserBuilder aParserBuilder,
ErrorHandler err,
bool  newxta,
xta_part_t  part
 

int32_t parseXTA const char *  ,
UTAP::ParserBuilder ,
UTAP::ErrorHandler ,
bool  newxta
 

Parse a buffer in the XTA format, reporting the system to the given implementation of the the ParserBuilder interface and reporting errors to the ErrorHandler.

If newxta is true, then the 4.x syntax is used; otherwise the 3.x syntax is used. On success, this function returns with a positive value.

void utap_error const TypeException te,
int32_t  fl,
int32_t  fc,
int32_t  ll,
int32_t  lc
[static]
 

void utap_error const char *  msg  )  [static]
 

int utap_lex  )  [static]
 

int yyparse  ) 
 

YYSIZE_T yystrlen yystr   )  const [static]
 


Variable Documentation

ParserBuilder* ch [static]
 

ErrorHandler* errorHandler [static]
 

int32_t g_parameter_count [static]
 

YYLTYPE last_loc [static]
 

const char* PE_ALT_TRANS = "alternative transition expected" [static]
 

const char* PE_ARGLIST = "argument expression list expected" [static]
 

const char* PE_ARGLIST_ = "one more argument expression expected" [static]
 

const char* PE_ARROW = "'->' expected" [static]
 

const char* PE_ASSIGN = "'=' expected" [static]
 

const char* PE_ASSIGN_EXP = "assignment expression expected" [static]
 

const char* PE_BANG = "'!' expected" [static]
 

const char* PE_BANGQUE = "'!' or '?' expected" [static]
 

const char* PE_COLON = "':' expected" [static]
 

const char* PE_CONST_EXP = "constant expression expected" [static]
 

const char* PE_EXPR = "expression expected" [static]
 

const char* PE_GUARD_EXP = "guard expression expected" [static]
 

const char* PE_GUARD_EXP_ = "one more guard expression expected" [static]
 

const char* PE_INIT = "'init' expected" [static]
 

const char* PE_INITIAL = "initialiser expected" [static]
 

const char* PE_INV = "invariant expression expected" [static]
 

const char* PE_LBRACE = "'{' expected" [static]
 

const char* PE_LBRACES = "'(' or '{' expected" [static]
 

const char* PE_LOC_DECL = "location declaration expected" [static]
 

const char* PE_LPAREN = "'(' expected" [static]
 

const char* PE_MEMBER = "member declarations expected" [static]
 

const char* PE_MEMBERID = "member identifier expected" [static]
 

const char* PE_MEMBERID_ = "one more member identifier expected" [static]
 

const char* PE_MEMBERTYPE = "member type identifier expected" [static]
 

const char* PE_PARAM_DECL_ = "one more parameter declaration expected" [static]
 

const char* PE_PARAMETERS = "parameters expected" [static]
 

const char* PE_PARAMETERS_ = "one more parameter expected" [static]
 

const char* PE_PARAMID = "parameter identifier expected" [static]
 

const char* PE_PROCID = "process identifiers expected" [static]
 

const char* PE_PROCID_ = "one more process identifier expected" [static]
 

const char* PE_QUE = "'?' expected" [static]
 

const char* PE_RBRACE = "'}' expected" [static]
 

const char* PE_RPAREN = "')' expected" [static]
 

const char* PE_RSQBRACE = "']' expected" [static]
 

const char* PE_SEMICOLON = "';' expected" [static]
 

const char* PE_STATE = "'state' expected" [static]
 

const char* PE_STATE_DECL = "state declaration expected" [static]
 

const char* PE_STATE_DECL_ = "one more state declaration expected" [static]
 

const char* PE_STATEID = "state identifier expected" [static]
 

const char* PE_STATEID_ = "one more state identifier expected" [static]
 

const char* PE_SYNC_EXP = "synchronization expression expected" [static]
 

const char* PE_SYSTEM = "'system' expected" [static]
 

const char* PE_TRANS = "'trans' expected" [static]
 

const char* PE_TRANS_DECL = "transition declaration expected" [static]
 

const char* PE_TRANS_DECL_ = "one more transition declaration expected" [static]
 

const char* PE_TYPE_DEF = "type definition expected" [static]
 

const char* PE_TYPEID = "type identifier expected" [static]
 

const char* PE_TYPEID_ = "one more type identifier expected" [static]
 

const char* PE_VARID = "variable identifier expected" [static]
 

char rootTransId[MAXLEN] [static]
 

syntax_t syntax [static]
 

int syntax_token = 0 [static]
 

int yychar
 

const short yycheck[] [static]
 

const unsigned short yydefact[] [static]
 

const short yydefgoto[] [static]
 

Initial value:

{ -1, 20, 21, 25, 391, 28, 95, 22, 81, 269, 325, 82, 83, 270, 271, 84, 334, 268, 32, 33, 157, 189, 190, 336, 431, 432, 433, 277, 86, 262, 263, 158, 246, 287, 288, 345, 346, 35, 205, 88, 379, 320, 315, 316, 373, 417, 418, 465, 503, 543, 544, 592, 630, 647, 52, 672, 421, 422, 423, 462, 459, 516, 555, 429, 471, 517, 572, 574, 548, 577, 618, 657, 682, 683, 654, 655, 726, 725, 706, 727, 594, 595, 518, 206, 207, 225, 49, 148, 50, 292, 56, 57, 159, 242, 300, 301, 160, 413, 450, 407, 359, 364, 306, 63, 64, 65, 405, 406, 447, 480, 481, 68, 563, 583, 584, 627, 661, 70, 72, 73, 176, 177 }

YYLTYPE yylloc
 

YYLTYPE* yylocationp
 

YYSTYPE yylval
 

int yynerrs
 

const short yypact[] [static]
 

const short yypgoto[] [static]
 

Initial value:

{ -595, -595, -595, 221, -595, -58, -595, 920, -595, -595, -595, -595, -595, -595, -595, -10, -595, 734, 751, 919, -17, -595, 744, -595, -319, -595, 550, -61, -16, -595, 713, 55, -12, -595, 731, -595, 626, -595, -595, -595, -595, -595, 17, 1024, -595, -595, 574, 553, -595, -595, 473, -595, 403, -88, 396, -79, 590, -595, 624, -595, -595, -595, -595, 489, -562, -533, -595, -595, -595, -595, -595, -595, -595, -595, -595, 395, -595, -595, -595, -595, -594, -6, -7, -595, -595, -595, 1, -595, -595, 669, -595, 1044, -46, -595, -595, 703, -595, -595, -595, -595, -595, -595, -595, 753, 898, -595, -128, 1050, -595, -595, 542, 543, -595, -595, 463, -595, 375, 417, -595, -595, -595, -595 }

const unsigned char yyr1[] [static]
 

const unsigned char yyr2[] [static]
 

const char* yysrc
 

const unsigned char yystos[] [static]
 

const short yytable[] [static]
 

const char* const yytname[] [static]
 

const unsigned char yytranslate[] [static]
 

YYSTYPE* yyvaluep
 


Generated on Sat May 15 12:33:41 2004 for libutap by doxygen 1.3.7