do-syntax.cpp File Reference

#include <assert.h>
#include <stdlib.h>
#include <stdio.h>
#include <map>
#include <vector>
#include "do-lexer.h"
#include "do-printer.h"
#include "do-grammar.h"

Include dependency graph for do-syntax.cpp:

Go to the source code of this file.

Classes

union  YYSTYPE
union  yyalloc

Defines

#define YYBISON   1
#define YYBISON_VERSION   "2.4.1"
#define YYSKELETON_NAME   "yacc.c"
#define YYPURE   0
#define YYPUSH   0
#define YYPULL   1
#define YYLSP_NEEDED   0
#define yyparse   doparse
#define yylex   dolex
#define yyerror   doerror
#define yylval   dolval
#define yychar   dochar
#define yydebug   dodebug
#define yynerrs   donerrs
#define YYSTTYPE   char*
#define YYDEBUG   0
#define YYERROR_VERBOSE   0
#define YYTOKEN_TABLE   0
#define YYSTYPE_IS_TRIVIAL   1
#define yystype   YYSTYPE
#define YYSTYPE_IS_DECLARED   1
#define YYSIZE_T   unsigned int
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
#define YY_(msgid)   msgid
#define YYUSE(e)   ((void) (e))
#define YYID(n)   (n)
#define YYSTACK_ALLOC   YYMALLOC
#define YYSTACK_FREE   YYFREE
#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM
#define YYMALLOC   malloc
#define YYFREE   free
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
#define YYSTACK_BYTES(N)
#define YYCOPY(To, From, Count)
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
#define YYFINAL   2
#define YYLAST   68
#define YYNTOKENS   31
#define YYNNTS   14
#define YYNRULES   35
#define YYNSTATES   67
#define YYUNDEFTOK   2
#define YYMAXUTOK   285
#define YYTRANSLATE(YYX)   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
#define YYPACT_NINF   -22
#define YYTABLE_NINF   -1
#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 yyerrorlab
#define YYFAIL   goto yyerrlab
#define YYRECOVERING()   (!!yyerrstatus)
#define YYBACKUP(Token, Value)
#define YYTERROR   1
#define YYERRCODE   256
#define YYRHSLOC(Rhs, K)   ((Rhs)[K])
#define YYLLOC_DEFAULT(Current, Rhs, N)
#define YY_LOCATION_PRINT(File, Loc)   ((void) 0)
#define YYLEX   yylex ()
#define YYDPRINTF(Args)
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
#define YY_STACK_PRINT(Bottom, Top)
#define YY_REDUCE_PRINT(Rule)
#define YYINITDEPTH   200
#define YYMAXDEPTH   10000
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))

Typedefs

typedef unsigned char yytype_uint8
typedef short int yytype_int8
typedef unsigned short int yytype_uint16
typedef short int yytype_int16

Enumerations

enum  yytokentype {
  BRACE_OPEN = 258, BRACE_CLOSE = 259, COLON = 260, BRACKET_OPEN = 261,
  BRACKET_CLOSE = 262, SYMBOL = 263, NUMBER = 264, STRING = 265,
  DIMENSION_OPEN = 266, DIMENSION_CLOSE = 267, BRACE_OPEN = 258, BRACE_CLOSE = 259,
  COLON = 260, BRACKET_OPEN = 261, BRACKET_CLOSE = 262, SYMBOL = 263,
  NUMBER = 264, STRING = 265, DIMENSION_OPEN = 266, DIMENSION_CLOSE = 267,
  META = 258, NAME = 259, LPAREN = 260, RPAREN = 261,
  MESSAGE = 262, SEMICOLON = 263, NUMBER = 264, DATA = 265,
  COMMA = 266, LBRACE = 267, RBRACE = 268, STAR = 269,
  PRECOMPILER = 270, READ = 271, WRITE = 272, VOLATILE = 273,
  CLASS = 274, COLON = 275, VIRTUAL = 276, ASSIGNMENT = 277,
  EQUALITY = 278, NEQ = 279, OPERATOR = 280, TEMPLATE_OPEN = 281,
  TEMPLATE_CLOSE = 282, BRACKETS = 283, TILDE = 284, CONST = 285,
  META = 258, NAME = 259, LPAREN = 260, RPAREN = 261,
  MESSAGE = 262, SEMICOLON = 263, NUMBER = 264, DATA = 265,
  COMMA = 266, LBRACE = 267, RBRACE = 268, STAR = 269,
  PRECOMPILER = 270, READ = 271, WRITE = 272, VOLATILE = 273,
  CLASS = 274, COLON = 275, VIRTUAL = 276, ASSIGNMENT = 277,
  EQUALITY = 278, NEQ = 279, OPERATOR = 280, TEMPLATE_OPEN = 281,
  TEMPLATE_CLOSE = 282, BRACKETS = 283, TILDE = 284, CONST = 285
}

Functions

void doerror (const char *text)
char * cat (const char *a, const char *b)
char * args2str (vector< s_arg > *args, char *sep=NULL)
char * argnames2str (vector< s_arg > *args)
void check_access_access (bool t)
int yyparse ()

Variables

bool access_checks
outputbuf object
outputbuf methods
outputbuf meta
outputbuf globhead
char * current_do
char * current_pa
char * makers_emitted_for
int yytype
YYSTYPEyyvaluep
int yychar
YYSTYPE yylval
int yynerrs


Define Documentation

#define YY_ ( msgid   )     msgid

Definition at line 286 of file do-syntax.cpp.

#define YY_LOCATION_PRINT ( File,
Loc   )     ((void) 0)

Definition at line 738 of file do-syntax.cpp.

#define YY_REDUCE_PRINT ( Rule   ) 

Definition at line 911 of file do-syntax.cpp.

#define YY_STACK_PRINT ( Bottom,
Top   ) 

Definition at line 910 of file do-syntax.cpp.

#define YY_SYMBOL_PRINT ( Title,
Type,
Value,
Location   ) 

Definition at line 909 of file do-syntax.cpp.

#define YYABORT   goto yyabortlab

Definition at line 667 of file do-syntax.cpp.

#define YYACCEPT   goto yyacceptlab

Definition at line 666 of file do-syntax.cpp.

#define YYBACKUP ( Token,
Value   ) 

Value:

do                                                              \
  if (yychar == YYEMPTY && yylen == 1)                          \
    {                                                           \
      yychar = (Token);                                         \
      yylval = (Value);                                         \
      yytoken = YYTRANSLATE (yychar);                           \
      YYPOPSTACK (1);                                           \
      goto yybackup;                                            \
    }                                                           \
  else                                                          \
    {                                                           \
      yyerror (YY_("syntax error: cannot back up")); \
      YYERROR;                                                  \
    }                                                           \
while (YYID (0))

Definition at line 679 of file do-syntax.cpp.

#define YYBISON   1

Definition at line 46 of file do-syntax.cpp.

#define YYBISON_VERSION   "2.4.1"

Definition at line 49 of file do-syntax.cpp.

#define yychar   dochar

Definition at line 71 of file do-syntax.cpp.

#define yyclearin   (yychar = YYEMPTY)

Definition at line 662 of file do-syntax.cpp.

#define YYCOPY ( To,
From,
Count   ) 

Value:

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

Definition at line 412 of file do-syntax.cpp.

#define YYDEBUG   0

Definition at line 147 of file do-syntax.cpp.

#define yydebug   dodebug

Definition at line 72 of file do-syntax.cpp.

#define YYDPRINTF ( Args   ) 

Definition at line 908 of file do-syntax.cpp.

#define YYEMPTY   (-2)

Definition at line 663 of file do-syntax.cpp.

#define YYEOF   0

Definition at line 664 of file do-syntax.cpp.

#define YYERRCODE   256

Definition at line 698 of file do-syntax.cpp.

#define yyerrok   (yyerrstatus = 0)

Definition at line 661 of file do-syntax.cpp.

#define YYERROR   goto yyerrorlab

Definition at line 668 of file do-syntax.cpp.

#define yyerror   doerror

Definition at line 69 of file do-syntax.cpp.

#define YYERROR_VERBOSE   0

Definition at line 155 of file do-syntax.cpp.

#define YYFAIL   goto yyerrlab

Definition at line 675 of file do-syntax.cpp.

#define YYFINAL   2

Definition at line 442 of file do-syntax.cpp.

#define YYFREE   free

Definition at line 375 of file do-syntax.cpp.

#define YYID (  )     (n)

Definition at line 299 of file do-syntax.cpp.

#define YYINITDEPTH   200

Definition at line 917 of file do-syntax.cpp.

#define YYLAST   68

Definition at line 444 of file do-syntax.cpp.

#define YYLEX   yylex ()

Definition at line 748 of file do-syntax.cpp.

#define yylex   dolex

Definition at line 68 of file do-syntax.cpp.

#define YYLLOC_DEFAULT ( Current,
Rhs,
 ) 

Value:

do                                                                      \
      if (YYID (N))                                                    \
        {                                                               \
          (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
          (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
          (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
          (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
        }                                                               \
      else                                                              \
        {                                                               \
          (Current).first_line   = (Current).last_line   =              \
            YYRHSLOC (Rhs, 0).last_line;                                \
          (Current).first_column = (Current).last_column =              \
            YYRHSLOC (Rhs, 0).last_column;                              \
        }                                                               \
    while (YYID (0))

Definition at line 707 of file do-syntax.cpp.

#define YYLSP_NEEDED   0

Definition at line 64 of file do-syntax.cpp.

#define yylval   dolval

Definition at line 70 of file do-syntax.cpp.

#define YYMALLOC   malloc

Definition at line 368 of file do-syntax.cpp.

#define YYMAXDEPTH   10000

Definition at line 928 of file do-syntax.cpp.

#define YYMAXUTOK   285

Definition at line 457 of file do-syntax.cpp.

#define yynerrs   donerrs

Definition at line 73 of file do-syntax.cpp.

#define YYNNTS   14

Definition at line 449 of file do-syntax.cpp.

#define YYNRULES   35

Definition at line 451 of file do-syntax.cpp.

#define YYNSTATES   67

Definition at line 453 of file do-syntax.cpp.

#define YYNTOKENS   31

Definition at line 447 of file do-syntax.cpp.

#define YYPACT_NINF   -22

Definition at line 602 of file do-syntax.cpp.

#define yyparse   doparse

Definition at line 67 of file do-syntax.cpp.

#define YYPOPSTACK (  )     (yyvsp -= (N), yyssp -= (N))

#define YYPULL   1

Definition at line 61 of file do-syntax.cpp.

#define YYPURE   0

Definition at line 55 of file do-syntax.cpp.

#define YYPUSH   0

Definition at line 58 of file do-syntax.cpp.

 
#define YYRECOVERING (  )     (!!yyerrstatus)

Definition at line 677 of file do-syntax.cpp.

#define YYRHSLOC ( Rhs,
 )     ((Rhs)[K])

Definition at line 705 of file do-syntax.cpp.

#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)

Definition at line 276 of file do-syntax.cpp.

#define YYSIZE_T   unsigned int

Definition at line 272 of file do-syntax.cpp.

#define YYSKELETON_NAME   "yacc.c"

Definition at line 52 of file do-syntax.cpp.

#define YYSTACK_ALLOC   YYMALLOC

Definition at line 354 of file do-syntax.cpp.

#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM

Definition at line 357 of file do-syntax.cpp.

#define YYSTACK_BYTES (  ) 

Value:

((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
      + YYSTACK_GAP_MAXIMUM)

Definition at line 401 of file do-syntax.cpp.

#define YYSTACK_FREE   YYFREE

Definition at line 355 of file do-syntax.cpp.

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

Definition at line 397 of file do-syntax.cpp.

#define YYSTACK_RELOCATE ( Stack_alloc,
Stack   ) 

Value:

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

Definition at line 428 of file do-syntax.cpp.

#define YYSTTYPE   char*

Definition at line 139 of file do-syntax.cpp.

#define yystype   YYSTYPE

Definition at line 220 of file do-syntax.cpp.

#define YYSTYPE_IS_DECLARED   1

Definition at line 221 of file do-syntax.cpp.

#define YYSTYPE_IS_TRIVIAL   1

Definition at line 219 of file do-syntax.cpp.

#define YYTABLE_NINF   -1

Definition at line 625 of file do-syntax.cpp.

#define YYTERROR   1

Definition at line 697 of file do-syntax.cpp.

#define YYTOKEN_TABLE   0

Definition at line 160 of file do-syntax.cpp.

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

Definition at line 459 of file do-syntax.cpp.

#define YYUNDEFTOK   2

Definition at line 456 of file do-syntax.cpp.

#define YYUSE (  )     ((void) (e))

Definition at line 292 of file do-syntax.cpp.


Typedef Documentation

typedef short int yytype_int16

Definition at line 259 of file do-syntax.cpp.

typedef short int yytype_int8

Definition at line 247 of file do-syntax.cpp.

typedef unsigned short int yytype_uint16

Definition at line 253 of file do-syntax.cpp.

typedef unsigned char yytype_uint8

Definition at line 238 of file do-syntax.cpp.


Enumeration Type Documentation

Enumerator:
BRACE_OPEN 
BRACE_CLOSE 
COLON 
BRACKET_OPEN 
BRACKET_CLOSE 
SYMBOL 
NUMBER 
STRING 
DIMENSION_OPEN 
DIMENSION_CLOSE 
BRACE_OPEN 
BRACE_CLOSE 
COLON 
BRACKET_OPEN 
BRACKET_CLOSE 
SYMBOL 
NUMBER 
STRING 
DIMENSION_OPEN 
DIMENSION_CLOSE 
META 
NAME 
LPAREN 
RPAREN 
MESSAGE 
SEMICOLON 
NUMBER 
DATA 
COMMA 
LBRACE 
RBRACE 
STAR 
PRECOMPILER 
READ 
WRITE 
VOLATILE 
CLASS 
COLON 
VIRTUAL 
ASSIGNMENT 
EQUALITY 
NEQ 
OPERATOR 
TEMPLATE_OPEN 
TEMPLATE_CLOSE 
BRACKETS 
TILDE 
CONST 
META 
NAME 
LPAREN 
RPAREN 
MESSAGE 
SEMICOLON 
NUMBER 
DATA 
COMMA 
LBRACE 
RBRACE 
STAR 
PRECOMPILER 
READ 
WRITE 
VOLATILE 
CLASS 
COLON 
VIRTUAL 
ASSIGNMENT 
EQUALITY 
NEQ 
OPERATOR 
TEMPLATE_OPEN 
TEMPLATE_CLOSE 
BRACKETS 
TILDE 
CONST 

Definition at line 169 of file do-syntax.cpp.


Function Documentation

char* argnames2str ( vector< s_arg > *  args  ) 

Definition at line 113 of file do-syntax.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

char* args2str ( vector< s_arg > *  args,
char *  sep = NULL 
)

Definition at line 98 of file do-syntax.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

char* cat ( const char *  a,
const char *  b 
)

Definition at line 90 of file do-syntax.cpp.

Here is the caller graph for this function:

void check_access_access ( bool  t  ) 

Definition at line 126 of file do-syntax.cpp.

Here is the caller graph for this function:

void doerror ( const char *  text  ) 

Definition at line 2038 of file do-lexer.cpp.

int yyparse (  ) 

Definition at line 1223 of file do-syntax.cpp.

Here is the call graph for this function:


Variable Documentation

Definition at line 45 of file doc.cpp.

char* current_do

Definition at line 42 of file doc.cpp.

char* current_pa

Definition at line 43 of file doc.cpp.

Definition at line 40 of file doc.cpp.

Definition at line 44 of file doc.cpp.

Definition at line 37 of file doc.cpp.

Definition at line 36 of file doc.cpp.

Definition at line 35 of file doc.cpp.

int yychar

Definition at line 1186 of file do-syntax.cpp.

Definition at line 1195 of file do-syntax.cpp.

int yynerrs

Definition at line 1198 of file do-syntax.cpp.

int yytype

Definition at line 1157 of file do-syntax.cpp.

Definition at line 1158 of file do-syntax.cpp.


Generated on Sat Feb 20 19:04:26 2010 for Data Objects by  doxygen 1.5.9