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:

Classes

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 YYERROR_VERBOSE   1
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
#define YYUSE(e)   ((void) (e))
#define YYID(n)   (n)
#define YYSTACK_FREE(Ptr)   do { /* empty */; } while (YYID (0))
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
#define YYSTACK_BYTES(N)
#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 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 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 {
  META = 258, NAME = 259, LPAREN = 260, RPAREN = 261,
  MESSAGE = 262, SEMICOLON = 263, NUMBER = 264, INIT = 265,
  ACTIVE = 266, COMMA = 267, LBRACE = 268, RBRACE = 269,
  STAR = 270, PRECOMPILER = 271, VOLATILE = 272, CLASS = 273,
  TEMPLATE_OPEN = 274, TEMPLATE_CLOSE = 275, META = 258, NAME = 259,
  LPAREN = 260, RPAREN = 261, MESSAGE = 262, SEMICOLON = 263,
  NUMBER = 264, INIT = 265, ACTIVE = 266, COMMA = 267,
  LBRACE = 268, RBRACE = 269, STAR = 270, PRECOMPILER = 271,
  VOLATILE = 272, CLASS = 273, TEMPLATE_OPEN = 274, TEMPLATE_CLOSE = 275,
  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
const char * yysrc
int yytype
YYSTYPE * yyvaluep
int yychar
YYSTYPE yylval
int yynerrs

Define Documentation

#define YY_REDUCE_PRINT ( Rule   ) 
#define YY_STACK_PRINT ( Bottom,
Top   ) 
#define YY_SYMBOL_PRINT ( Title,
Type,
Value,
Location   ) 
#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 (1);                                           \
      goto yybackup;                                            \
    }                                                           \
  else                                                          \
    {                                                           \
      yyerror (YY_("syntax error: cannot back up")); \
      YYERROR;                                                  \
    }                                                           \
while (YYID (0))
#define YYBISON   1
#define YYBISON_VERSION   "2.4.1"
#define yychar   dochar
#define yyclearin   (yychar = YYEMPTY)
#define yydebug   dodebug
#define YYDPRINTF ( Args   ) 
#define YYEMPTY   (-2)
#define YYEOF   0
#define YYERRCODE   256
#define yyerrok   (yyerrstatus = 0)
#define YYERROR   goto yyerrorlab
#define yyerror   doerror
#define YYERROR_VERBOSE   1
#define YYFAIL   goto yyerrlab
#define YYFINAL   2
#define YYID ( n   )     (n)
#define YYLAST   68
#define YYLEX   yylex ()
#define yylex   dolex
#define YYLSP_NEEDED   0
#define yylval   dolval
#define YYMAXUTOK   285
#define yynerrs   donerrs
#define YYNNTS   14
#define YYNRULES   35
#define YYNSTATES   67
#define YYNTOKENS   31
#define YYPACT_NINF   -22
#define yyparse   doparse
#define YYPOPSTACK (  )     (yyvsp -= (N), yyssp -= (N))
#define YYPULL   1
#define YYPURE   0
#define YYPUSH   0
 
#define YYRECOVERING (  )     (!!yyerrstatus)
#define YYRHSLOC ( Rhs,
 )     ((Rhs)[K])
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
#define YYSKELETON_NAME   "yacc.c"
#define YYSTACK_BYTES (  ) 
Value:
((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
      + YYSTACK_GAP_MAXIMUM)
#define YYSTACK_FREE ( Ptr   )     do { /* empty */; } while (YYID (0))
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
#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))
#define YYSTTYPE   char*
#define YYTABLE_NINF   -1
#define YYTERROR   1
#define YYTRANSLATE ( YYX   )     ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
#define YYUNDEFTOK   2
#define YYUSE (  )     ((void) (e))

Typedef Documentation

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

Enumeration Type Documentation

Enumerator:
META 
NAME 
LPAREN 
RPAREN 
MESSAGE 
SEMICOLON 
NUMBER 
INIT 
ACTIVE 
COMMA 
LBRACE 
RBRACE 
STAR 
PRECOMPILER 
VOLATILE 
CLASS 
TEMPLATE_OPEN 
TEMPLATE_CLOSE 
META 
NAME 
LPAREN 
RPAREN 
MESSAGE 
SEMICOLON 
NUMBER 
INIT 
ACTIVE 
COMMA 
LBRACE 
RBRACE 
STAR 
PRECOMPILER 
VOLATILE 
CLASS 
TEMPLATE_OPEN 
TEMPLATE_CLOSE 
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 

Function Documentation

char* argnames2str ( vector< s_arg > *  args  ) 

References cat(), and i.

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

References cat(), and i.

char* cat ( const char *  a,
const char *  b 
)
void check_access_access ( bool  t  ) 

References access_checks, and assert().

Referenced by yyparse().

void doerror ( const char *  text  ) 
int yyparse (  ) 

Variable Documentation

Referenced by check_access_access(), main(), and yyparse().

char* current_do

Referenced by yyparse().

char* current_pa

Referenced by yyparse().

Referenced by yyparse().

Referenced by main(), and yyparse().

int yychar
YYSTYPE yylval
int yynerrs
const char* yysrc
int yytype
YYSTYPE* yyvaluep
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated by  doxygen 1.6.2