Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

AtomParser.C File Reference

#include <stdio.h>
#include <string.h>
#include "AtomParser.h"
#include "Inform.h"
#include <inttypes.h>
#include <stdlib.h>
#include <values.h>

Go to the source code of this file.

Compounds

union  YYSTYPE
struct  yytoktype

Defines

#define KEY   257
#define WITHIN   258
#define EXWITHIN   259
#define PBWITHIN   260
#define WHERE   261
#define FUNC   262
#define STRFCTN   263
#define SAME   264
#define SINGLE   265
#define OF   266
#define AS   267
#define THROUGH   268
#define ERROR   269
#define RANGE   270
#define FLOAT   271
#define INT   272
#define WORD   273
#define COMPARE   274
#define OR   275
#define AND   276
#define LT   277
#define LE   278
#define EQ   279
#define GE   280
#define GT   281
#define NE   282
#define NLT   283
#define NLE   284
#define NEQ   285
#define NGE   286
#define NGT   287
#define NNE   288
#define SLT   289
#define SLE   290
#define SEQ   291
#define SGE   292
#define SGT   293
#define SNE   294
#define MATCH   295
#define ADD   296
#define SUB   297
#define MULT   298
#define DIV   299
#define MOD   300
#define EXP   301
#define nonassoc   302
#define NOT   303
#define UMINUS   304
#define YYCONST   const
#define yyclearin   yychar = -1
#define yyerrok   yyerrflag = 0
#define YYMAXDEPTH   150
#define YYERRCODE   256
#define YYNPROD   55
#define YYLAST   332
#define YYDEBUG   0
#define YYERROR   goto yyerrlab
#define YYACCEPT   return(0)
#define YYABORT   return(1)
#define YYBACKUP(newtoken, newvalue)
#define YYRECOVERING()   (!!yyerrflag)
#define YYNEW(type)   malloc(sizeof(type) * yynewmax)
#define YYCOPY(to, from, type)   (type *) memcpy(to, (char *) from, yymaxdepth * sizeof (type))
#define YYENLARGE(from, type)   (type *) realloc((char *) from, yynewmax * sizeof(type))
#define YYFLAG   (-10000000)
#define YYLEX()   yylex()

Typedefs

typedef int yytabelem

Functions

int yyparse ()
void yyerror (const char *s)
int yylex ()
int yywrap (void)

Variables

atomparser_nodeatomparser_result
 contains the final parse tree, or NULL if there was an error. More...

int yychar
int yyerrflag
YYSTYPE yylval
YYSTYPE yyval
int yy_yys [YYMAXDEPTH]
intyys = yy_yys
YYSTYPE yy_yyv [YYMAXDEPTH]
YYSTYPEyyv = yy_yyv
int yymaxdepth = YYMAXDEPTH
YYCONST yytabelem yyexca []
YYCONST yytabelem yyact []
YYCONST yytabelem yypact []
YYCONST yytabelem yypgo []
YYCONST yytabelem yyr1 []
YYCONST yytabelem yyr2 []
YYCONST yytabelem yychk []
YYCONST yytabelem yydef []
int yydebug
YYSTYPEyypv
intyyps
int yystate
int yytmp
int yynerrs


Define Documentation

#define ADD   296
 

Definition at line 88 of file AtomParser.C.

Referenced by yyparse.

#define AND   276
 

Definition at line 68 of file AtomParser.C.

Referenced by yyparse.

#define AS   267
 

Definition at line 59 of file AtomParser.C.

#define COMPARE   274
 

Definition at line 66 of file AtomParser.C.

Referenced by yyparse.

#define DIV   299
 

Definition at line 91 of file AtomParser.C.

Referenced by yyparse.

#define EQ   279
 

Definition at line 71 of file AtomParser.C.

#define ERROR   269
 

Definition at line 61 of file AtomParser.C.

#define EXP   301
 

Definition at line 93 of file AtomParser.C.

Referenced by yyparse.

#define EXWITHIN   259
 

Definition at line 51 of file AtomParser.C.

Referenced by yyparse.

#define FLOAT   271
 

Definition at line 63 of file AtomParser.C.

Referenced by yyparse.

#define FUNC   262
 

Definition at line 54 of file AtomParser.C.

#define GE   280
 

Definition at line 72 of file AtomParser.C.

#define GT   281
 

Definition at line 73 of file AtomParser.C.

#define INT   272
 

Definition at line 64 of file AtomParser.C.

Referenced by yyparse.

#define KEY   257
 

Definition at line 49 of file AtomParser.C.

#define LE   278
 

Definition at line 70 of file AtomParser.C.

#define LT   277
 

Definition at line 69 of file AtomParser.C.

#define MATCH   295
 

Definition at line 87 of file AtomParser.C.

Referenced by yyparse.

#define MOD   300
 

Definition at line 92 of file AtomParser.C.

Referenced by yyparse.

#define MULT   298
 

Definition at line 90 of file AtomParser.C.

Referenced by yyparse.

#define NE   282
 

Definition at line 74 of file AtomParser.C.

#define NEQ   285
 

Definition at line 77 of file AtomParser.C.

Referenced by yyparse.

#define NGE   286
 

Definition at line 78 of file AtomParser.C.

Referenced by yyparse.

#define NGT   287
 

Definition at line 79 of file AtomParser.C.

Referenced by yyparse.

#define NLE   284
 

Definition at line 76 of file AtomParser.C.

Referenced by yyparse.

#define NLT   283
 

Definition at line 75 of file AtomParser.C.

Referenced by yyparse.

#define NNE   288
 

Definition at line 80 of file AtomParser.C.

Referenced by yyparse.

#define nonassoc   302
 

Definition at line 94 of file AtomParser.C.

#define NOT   303
 

Definition at line 95 of file AtomParser.C.

Referenced by yyparse.

#define OF   266
 

Definition at line 58 of file AtomParser.C.

#define OR   275
 

Definition at line 67 of file AtomParser.C.

Referenced by yyparse.

#define PBWITHIN   260
 

Definition at line 52 of file AtomParser.C.

Referenced by yyparse.

#define RANGE   270
 

Definition at line 62 of file AtomParser.C.

#define SAME   264
 

Definition at line 56 of file AtomParser.C.

Referenced by yyparse.

#define SEQ   291
 

Definition at line 83 of file AtomParser.C.

Referenced by yyparse.

#define SGE   292
 

Definition at line 84 of file AtomParser.C.

Referenced by yyparse.

#define SGT   293
 

Definition at line 85 of file AtomParser.C.

Referenced by yyparse.

#define SINGLE   265
 

Definition at line 57 of file AtomParser.C.

#define SLE   290
 

Definition at line 82 of file AtomParser.C.

Referenced by yyparse.

#define SLT   289
 

Definition at line 81 of file AtomParser.C.

Referenced by yyparse.

#define SNE   294
 

Definition at line 86 of file AtomParser.C.

Referenced by yyparse.

#define STRFCTN   263
 

Definition at line 55 of file AtomParser.C.

#define SUB   297
 

Definition at line 89 of file AtomParser.C.

Referenced by yyparse.

#define THROUGH   268
 

Definition at line 60 of file AtomParser.C.

#define UMINUS   304
 

Definition at line 96 of file AtomParser.C.

Referenced by yyparse.

#define WHERE   261
 

Definition at line 53 of file AtomParser.C.

#define WITHIN   258
 

Definition at line 50 of file AtomParser.C.

Referenced by yyparse.

#define WORD   273
 

Definition at line 65 of file AtomParser.C.

Referenced by yyparse.

#define YYABORT   return(1)
 

Definition at line 418 of file AtomParser.C.

Referenced by yyparse.

#define YYACCEPT   return(0)
 

Definition at line 417 of file AtomParser.C.

Referenced by yyparse.

#define YYBACKUP newtoken,
newvalue   
 

Value:

{\
        if ( yychar >= 0 || ( yyr2[ yytmp ] >> 1 ) != 1 )\
        {\
                yyerror( "syntax error - cannot backup" );\
                goto yyerrlab;\
        }\
        yychar = newtoken;\
        yystate = *yyps;\
        yylval = newvalue;\
        goto yynewstate;\
}

Definition at line 419 of file AtomParser.C.

#define yyclearin   yychar = -1
 

Definition at line 137 of file AtomParser.C.

#define YYCONST   const
 

Definition at line 106 of file AtomParser.C.

Referenced by yyparse.

#define YYCOPY to,
from,
type       (type *) memcpy(to, (char *) from, yymaxdepth * sizeof (type))
 

Definition at line 433 of file AtomParser.C.

Referenced by yyparse.

#define YYDEBUG   0
 

Definition at line 282 of file AtomParser.C.

#define YYENLARGE from,
type       (type *) realloc((char *) from, yynewmax * sizeof(type))
 

Definition at line 435 of file AtomParser.C.

Referenced by yyparse.

#define YYERRCODE   256
 

Definition at line 155 of file AtomParser.C.

Referenced by yyparse.

#define yyerrok   yyerrflag = 0
 

Definition at line 138 of file AtomParser.C.

#define YYERROR   goto yyerrlab
 

Definition at line 416 of file AtomParser.C.

#define YYFLAG   (-10000000)
 

Definition at line 449 of file AtomParser.C.

Referenced by yyparse.

#define YYLAST   332
 

Definition at line 179 of file AtomParser.C.

Referenced by yyparse.

 
#define YYLEX      yylex()
 

YYNMBCHARS

Definition at line 506 of file AtomParser.C.

Referenced by yyparse.

#define YYMAXDEPTH   150
 

Definition at line 145 of file AtomParser.C.

Referenced by yyparse.

#define YYNEW type       malloc(sizeof(type) * yynewmax)
 

Definition at line 432 of file AtomParser.C.

Referenced by yyparse.

#define YYNPROD   55
 

Definition at line 178 of file AtomParser.C.

 
#define YYRECOVERING      (!!yyerrflag)
 

Definition at line 431 of file AtomParser.C.


Typedef Documentation

typedef int yytabelem
 

Definition at line 143 of file AtomParser.C.


Function Documentation

void yyerror const char *    s
 

Definition at line 160 of file AtomParser.C.

Referenced by yyparse.

int yylex  
 

int yyparse  
 

YYNMBCHARS

Definition at line 515 of file AtomParser.C.

References ADD, AND, atomparser_node, atomparser_yystring, COMPARE, DIV, YYSTYPE::dval, atomparser_node::dval, EXP, EXWITHIN, FLOAT, INT, atomparser_node::ival, YYSTYPE::ival, atomparser_node::left, MATCH, MOD, MULT, NEQ, NGE, NGT, NLE, NLT, NNE, YYSTYPE::node, atomparser_node::node_type, NOT, NULL, OR, PBWITHIN, RAW_STRING, atomparser_node::right, SAME, SEQ, SGE, SGT, SLE, SLT, SNE, SUB, yytoktype::t_val, UMINUS, WITHIN, WORD, YYABORT, YYACCEPT, yyact, yychar, yychk, YYCONST, YYCOPY, yydebug, yydef, YYENLARGE, YYERRCODE, yyerrflag, yyerror, yyexca, YYFLAG, YYLAST, YYLEX, YYMAXDEPTH, yymaxdepth, yynerrs, YYNEW, yypact, yypgo, yyps, yyr1, yyr2, yys, yystate, and yytmp.

Referenced by SymbolTable::parse.

int yywrap void   
 

Definition at line 166 of file AtomParser.C.


Variable Documentation

atomparser_node* atomparser_result
 

contains the final parse tree, or NULL if there was an error.

Definition at line 37 of file AtomParser.C.

int yy_yys[YYMAXDEPTH]
 

Definition at line 148 of file AtomParser.C.

YYSTYPE yy_yyv[YYMAXDEPTH]
 

Definition at line 149 of file AtomParser.C.

YYCONST yytabelem yyact[] [static]
 

Definition at line 180 of file AtomParser.C.

Referenced by yyparse.

int yychar
 

Definition at line 462 of file AtomParser.C.

Referenced by yyparse.

YYCONST yytabelem yychk[] [static]
 

Initial value:

{

-10000000,   -10,    -2,   256,    40,   303,   265,    -4,    -8,   258,
   259,   260,   264,    -3,   257,   263,   271,   272,   273,   297,
   296,   262,   276,   275,    -2,    -3,    -2,    -2,    -9,   271,
   272,    -9,    -9,   257,    -1,   296,   297,   300,   301,   298,
   299,   283,   284,   285,   286,   287,   288,   289,   290,   291,
   292,   293,   294,   295,    -5,    -7,    -6,   273,   272,   271,
    -5,    -3,    40,   257,    -3,    40,    -2,    -2,    41,    41,
   266,   266,   266,   267,    -3,    -3,    -3,    -3,    -3,    -3,
    -3,    -7,   268,    -3,    -3,    -2,    -2,    -2,    -2,    -6,
    41 }

Definition at line 248 of file AtomParser.C.

Referenced by yyparse.

int yydebug
 

Definition at line 444 of file AtomParser.C.

Referenced by yyparse.

YYCONST yytabelem yydef[] [static]
 

Initial value:

{

    -2,    -2,     2,     3,     0,     0,     6,    10,    11,     0,
     0,     0,     0,     0,    40,     0,    28,    29,    30,     0,
     0,     0,     0,     0,     0,     0,     5,     7,     0,    26,
    27,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,    42,    43,    44,    45,    46,    47,    48,    49,    50,
    51,    52,    53,    54,    17,    24,    22,    19,    20,    21,
    18,    34,     0,    40,    35,     0,     8,     9,     4,    31,
     0,     0,     0,     0,    16,    32,    33,    36,    37,    38,
    39,    25,     0,     0,     0,    12,    13,    14,    15,    23,
    41 }

Definition at line 260 of file AtomParser.C.

Referenced by yyparse.

int yyerrflag
 

Definition at line 461 of file AtomParser.C.

Referenced by yyparse.

YYCONST yytabelem yyexca[] [static]
 

Initial value:

{
-1, 0,
        0, 1,
        -2, 0,
-1, 1,
        0, -1,
        -2, 0,
        }

Definition at line 170 of file AtomParser.C.

Referenced by yyparse.

YYSTYPE yylval
 

Definition at line 141 of file AtomParser.C.

int yymaxdepth = YYMAXDEPTH [static]
 

Definition at line 154 of file AtomParser.C.

Referenced by yyparse.

int yynerrs
 

Definition at line 460 of file AtomParser.C.

Referenced by yyparse.

YYCONST yytabelem yypact[] [static]
 

Initial value:

{

     5,-10000000,  -244,-10000000,    22,    22,    22,-10000000,-10000000,  -233,
  -233,  -233,  -211,  -282,  -237,  -237,-10000000,-10000000,-10000000,    26,
    26,    11,    22,    22,    -4,   -41,-10000000,  -244,  -222,-10000000,
-10000000,  -223,  -224,  -226,    26,    26,    26,    26,    26,    26,
    26,-10000000,-10000000,-10000000,-10000000,-10000000,-10000000,-10000000,-10000000,-10000000,
-10000000,-10000000,-10000000,-10000000,  -237,-10000000,  -228,-10000000,-10000000,-10000000,
  -237,-10000000,    26,-10000000,-10000000,    26,-10000000,  -243,-10000000,-10000000,
    22,    22,    22,    22,  -276,  -272,  -272,  -271,-10000000,  -271,
  -271,-10000000,  -237,    30,    13,  -244,  -244,  -244,  -244,-10000000,
-10000000 }

Definition at line 216 of file AtomParser.C.

Referenced by yyparse.

YYCONST yytabelem yypgo[] [static]
 

Initial value:

{

     0,    65,    50,    48,    61,    59,    47,    49,    60,    52,
    58 }

Definition at line 228 of file AtomParser.C.

Referenced by yyparse.

int* yyps
 

Definition at line 455 of file AtomParser.C.

Referenced by yyparse.

YYSTYPE* yypv
 

Definition at line 454 of file AtomParser.C.

YYCONST yytabelem yyr1[] [static]
 

Initial value:

{

     0,    10,    10,    10,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     4,     8,     6,
     6,     6,     7,     7,     5,     5,     9,     9,     3,     3,
     3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
     3,     3,     1,     1,     1,     1,     1,     1,     1,     1,
     1,     1,     1,     1,     1 }

Definition at line 232 of file AtomParser.C.

Referenced by yyparse.

YYCONST yytabelem yyr2[] [static]
 

Initial value:

{

     0,     1,     3,     3,     7,     5,     3,     5,     7,     7,
     3,     3,     9,     9,     9,     9,     7,     5,     5,     3,
     3,     3,     3,     7,     3,     5,     3,     3,     3,     3,
     3,     7,     7,     7,     5,     5,     7,     7,     7,     7,
     3,     9,     3,     3,     3,     3,     3,     3,     3,     3,
     3,     3,     3,     3,     3 }

Definition at line 240 of file AtomParser.C.

Referenced by yyparse.

int * yys = yy_yys
 

Definition at line 148 of file AtomParser.C.

Referenced by yyparse.

int yystate
 

Definition at line 457 of file AtomParser.C.

Referenced by yyparse.

int yytmp
 

Definition at line 458 of file AtomParser.C.

Referenced by yyparse.

YYSTYPE * yyv = yy_yyv
 

Definition at line 149 of file AtomParser.C.

YYSTYPE yyval
 

Definition at line 142 of file AtomParser.C.


Generated on Sun Jul 6 01:28:01 2008 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002