95 |
}; |
}; |
96 |
|
|
97 |
/* Define the tokens together with their human representation. */ |
/* Define the tokens together with their human representation. */ |
98 |
%token GRAM_EOF 0 "end of string" |
%token GRAM_EOF 0 "end of file" |
99 |
%token STRING CHARACTER |
%token STRING "string" |
100 |
%token INT |
%token CHARACTER "character" |
101 |
|
%token INT "integer" |
102 |
|
|
103 |
%token PERCENT_TOKEN "%token" |
%token PERCENT_TOKEN "%token" |
104 |
%token PERCENT_NTERM "%nterm" |
%token PERCENT_NTERM "%nterm" |
113 |
%token PERCENT_RIGHT "%right" |
%token PERCENT_RIGHT "%right" |
114 |
%token PERCENT_NONASSOC "%nonassoc" |
%token PERCENT_NONASSOC "%nonassoc" |
115 |
|
|
116 |
%token PERCENT_EXPECT "%expect" |
%token PERCENT_EXPECT "%expect" |
117 |
%token PERCENT_START "%start" |
%token PERCENT_START "%start" |
118 |
%token PERCENT_PREC "%prec" |
%token PERCENT_PREC "%prec" |
119 |
%token PERCENT_DPREC "%dprec" |
%token PERCENT_DPREC "%dprec" |
120 |
%token PERCENT_MERGE "%merge" |
%token PERCENT_MERGE "%merge" |
121 |
%token PERCENT_VERBOSE "%verbose" |
%token PERCENT_VERBOSE "%verbose" |
122 |
%token PERCENT_ERROR_VERBOSE "%error-verbose" |
%token PERCENT_ERROR_VERBOSE "%error-verbose" |
123 |
|
|
124 |
%token PERCENT_OUTPUT "%output" |
%token PERCENT_OUTPUT "%output" |
125 |
%token PERCENT_FILE_PREFIX "%file-prefix" |
%token PERCENT_FILE_PREFIX "%file-prefix" |
126 |
%token PERCENT_NAME_PREFIX "%name-prefix" |
%token PERCENT_NAME_PREFIX "%name-prefix" |
127 |
|
|
128 |
%token PERCENT_DEFINE "%define" |
%token PERCENT_DEFINE "%define" |
129 |
%token PERCENT_PURE_PARSER "%pure-parser" |
%token PERCENT_PURE_PARSER "%pure-parser" |
130 |
%token PERCENT_GLR_PARSER "%glr-parser" |
%token PERCENT_GLR_PARSER "%glr-parser" |
131 |
|
|
132 |
%token PERCENT_DEFINES "%defines" |
%token PERCENT_DEFINES "%defines" |
133 |
|
|
134 |
%token PERCENT_YACC "%yacc" |
%token PERCENT_YACC "%yacc" |
135 |
|
|
136 |
%token PERCENT_DEBUG "%debug" |
%token PERCENT_DEBUG "%debug" |
137 |
%token PERCENT_LOCATIONS "%locations" |
%token PERCENT_LOCATIONS "%locations" |
138 |
%token PERCENT_NO_LINES "%no-lines" |
%token PERCENT_NO_LINES "%no-lines" |
139 |
%token PERCENT_SKELETON "%skeleton" |
%token PERCENT_SKELETON "%skeleton" |
140 |
%token PERCENT_TOKEN_TABLE "%token-table" |
%token PERCENT_TOKEN_TABLE "%token-table" |
141 |
|
|
142 |
%token TYPE |
%token TYPE "type" |
143 |
%token EQUAL "=" |
%token EQUAL "=" |
144 |
%token SEMICOLON ";" |
%token SEMICOLON ";" |
145 |
%token COLON ":" |
%token COLON ":" |
146 |
%token PIPE "|" |
%token PIPE "|" |
147 |
%token ID "identifier" |
%token ID "identifier" |
148 |
%token PERCENT_PERCENT "%%" |
%token PERCENT_PERCENT "%%" |
149 |
%token PROLOGUE EPILOGUE |
%token PROLOGUE "%{...%}" |
150 |
%token BRACED_CODE |
%token EPILOGUE "epilogue" |
151 |
|
%token BRACED_CODE "{...}" |
152 |
|
|
153 |
|
|
154 |
%type <string> CHARACTER TYPE STRING string_content |
%type <string> CHARACTER TYPE STRING string_content |
155 |
BRACED_CODE PROLOGUE EPILOGUE epilogue.opt action |
BRACED_CODE PROLOGUE EPILOGUE epilogue.opt action |