113 |
%token PERCENT_RIGHT "%right" |
%token PERCENT_RIGHT "%right" |
114 |
%token PERCENT_NONASSOC "%nonassoc" |
%token PERCENT_NONASSOC "%nonassoc" |
115 |
|
|
|
%token PERCENT_EXPECT "%expect" |
|
|
%token PERCENT_START "%start" |
|
116 |
%token PERCENT_PREC "%prec" |
%token PERCENT_PREC "%prec" |
117 |
%token PERCENT_DPREC "%dprec" |
%token PERCENT_DPREC "%dprec" |
118 |
%token PERCENT_MERGE "%merge" |
%token PERCENT_MERGE "%merge" |
|
%token PERCENT_VERBOSE "%verbose" |
|
|
%token PERCENT_ERROR_VERBOSE "%error-verbose" |
|
119 |
|
|
120 |
%token PERCENT_OUTPUT "%output" |
|
121 |
%token PERCENT_FILE_PREFIX "%file-prefix" |
/*----------------------. |
122 |
%token PERCENT_NAME_PREFIX "%name-prefix" |
| Global Declarations. | |
123 |
|
`----------------------*/ |
124 |
%token PERCENT_DEFINE "%define" |
|
125 |
%token PERCENT_PURE_PARSER "%pure-parser" |
%token |
126 |
%token PERCENT_GLR_PARSER "%glr-parser" |
PERCENT_DEBUG "%debug" |
127 |
|
PERCENT_DEFINE "%define" |
128 |
%token PERCENT_DEFINES "%defines" |
PERCENT_DEFINES "%defines" |
129 |
|
PERCENT_ERROR_VERBOSE "%error-verbose" |
130 |
%token PERCENT_YACC "%yacc" |
PERCENT_EXPECT "%expect" |
131 |
|
PERCENT_FILE_PREFIX "%file-prefix" |
132 |
%token PERCENT_DEBUG "%debug" |
PERCENT_GLR_PARSER "%glr-parser" |
133 |
%token PERCENT_LOCATIONS "%locations" |
PERCENT_LEX_PARAM "%lex-param" |
134 |
%token PERCENT_NO_LINES "%no-lines" |
PERCENT_LOCATIONS "%locations" |
135 |
%token PERCENT_SKELETON "%skeleton" |
PERCENT_NAME_PREFIX "%name-prefix" |
136 |
%token PERCENT_TOKEN_TABLE "%token-table" |
PERCENT_NO_LINES "%no-lines" |
137 |
|
PERCENT_OUTPUT "%output" |
138 |
|
PERCENT_PARSE_PARAM "%parse-param" |
139 |
|
PERCENT_PURE_PARSER "%pure-parser" |
140 |
|
PERCENT_SKELETON "%skeleton" |
141 |
|
PERCENT_START "%start" |
142 |
|
PERCENT_TOKEN_TABLE "%token-table" |
143 |
|
PERCENT_VERBOSE "%verbose" |
144 |
|
PERCENT_YACC "%yacc" |
145 |
|
; |
146 |
|
|
147 |
%token TYPE "type" |
%token TYPE "type" |
148 |
%token EQUAL "=" |
%token EQUAL "=" |
149 |
%token SEMICOLON ";" |
%token SEMICOLON ";" |
150 |
%token COLON ":" |
%token COLON ":" |
151 |
|
%token COMMA "," |
152 |
%token PIPE "|" |
%token PIPE "|" |
153 |
%token ID "identifier" |
%token ID "identifier" |
154 |
%token PERCENT_PERCENT "%%" |
%token PERCENT_PERCENT "%%" |
192 |
| "%error-verbose" { error_verbose = 1; } |
| "%error-verbose" { error_verbose = 1; } |
193 |
| "%expect" INT { expected_conflicts = $2; } |
| "%expect" INT { expected_conflicts = $2; } |
194 |
| "%file-prefix" "=" string_content { spec_file_prefix = $3; } |
| "%file-prefix" "=" string_content { spec_file_prefix = $3; } |
195 |
|
| "%glr-parser" { glr_parser = 1; } |
196 |
|
| "%lex-param" string_content "," string_content |
197 |
|
{ muscle_pair_list_grow ("lex_param", $2, $4); } |
198 |
| "%locations" { locations_flag = 1; } |
| "%locations" { locations_flag = 1; } |
199 |
| "%name-prefix" "=" string_content { spec_name_prefix = $3; } |
| "%name-prefix" "=" string_content { spec_name_prefix = $3; } |
200 |
| "%no-lines" { no_lines_flag = 1; } |
| "%no-lines" { no_lines_flag = 1; } |
201 |
| "%output" "=" string_content { spec_outfile = $3; } |
| "%output" "=" string_content { spec_outfile = $3; } |
202 |
|
| "%parse-param" string_content "," string_content |
203 |
|
{ muscle_pair_list_grow ("parse_param", $2, $4); } |
204 |
| "%pure-parser" { pure_parser = 1; } |
| "%pure-parser" { pure_parser = 1; } |
|
| "%glr-parser" { glr_parser = 1; } |
|
205 |
| "%skeleton" string_content { skeleton = $2; } |
| "%skeleton" string_content { skeleton = $2; } |
206 |
| "%token-table" { token_table_flag = 1; } |
| "%token-table" { token_table_flag = 1; } |
207 |
| "%verbose" { report_flag = 1; } |
| "%verbose" { report_flag = 1; } |