param_parse = 1 << 1,
param_both = param_lex | param_parse
} param_type;
-#line 859 "src/parse-gram.y" /* yacc.c:355 */
+#line 862 "src/parse-gram.y" /* yacc.c:355 */
#include "muscle-tab.h"
#line 136 "src/parse-gram.c" /* yacc.c:355 */
param_type param;
#line 532 "src/parse-gram.y" /* yacc.c:355 */
code_props_type code_type;
-#line 861 "src/parse-gram.y" /* yacc.c:355 */
+#line 864 "src/parse-gram.y" /* yacc.c:355 */
struct
{
605, 625, 626, 627, 628, 632, 633, 638, 640, 645,
652, 665, 670, 678, 679, 683, 687, 691, 692, 693,
698, 703, 710, 719, 727, 741, 742, 751, 752, 758,
- 759, 760, 767, 767, 777, 781, 785, 790, 802, 807,
- 816, 818, 823, 828, 835, 843, 844, 854, 855, 880,
- 881, 882, 883, 895, 897, 906, 911, 912, 917, 925,
- 926
+ 759, 760, 767, 767, 780, 784, 788, 793, 805, 810,
+ 819, 821, 826, 831, 838, 846, 847, 857, 858, 883,
+ 884, 885, 886, 898, 900, 909, 914, 915, 920, 928,
+ 929
};
#endif
break;
case 89: /* value */
-#line 870 "src/parse-gram.y" /* yacc.c:684 */
+#line 873 "src/parse-gram.y" /* yacc.c:684 */
{
switch (((*yyvaluep).value).kind)
{
free(gram_piece[gram_piece2 + 2]);
gram_piece[gram_piece2 + 2] = strdup(code_piece[code_piece0 - 1]);
insert_after(1, "</PYACC_Section1Or2_Code>");
- insert_before(0, "<PYACC_Section1Or2_Code><PYACC_IDNone />");
+ insert_before(0, "<PYACC_Section1Or2_Code><PYACC_ID />");
}
#line 2418 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 42:
#line 546 "src/parse-gram.y" /* yacc.c:1648 */
- { insert_before(0, "<PYACC_IDNone />"); }
+ { insert_before(0, "<PYACC_ID />"); }
#line 2452 "src/parse-gram.c" /* yacc.c:1648 */
break;
symbol_user_token_number_set ((yyvsp[-1].symbol), (yyvsp[0].integer), (yylsp[0]));
symbol_class_set ((yyvsp[-1].symbol), token_sym, (yylsp[-1]), false);
insert_after(1, "</PYACC_Section1Or2_Symbol>");
- sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol user_token=\"%d\">", (yyvsp[0].integer));
+ sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol token=\"%d\">", (yyvsp[0].integer));
insert_before(0, gram_piece_temp);
}
#line 2624 "src/parse-gram.c" /* yacc.c:1648 */
symbol_type_set ((yyvsp[-1].symbol), current_type, (yylsp[-1]));
symbol_user_token_number_set ((yyvsp[-1].symbol), (yyvsp[0].integer), (yylsp[0]));
insert_after(1, "</PYACC_Section1Or2_Symbol>");
- sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol user_token=\"%d\">", (yyvsp[0].integer));
+ sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol token=\"%d\">", (yyvsp[0].integer));
insert_before(0, gram_piece_temp);
}
#line 2714 "src/parse-gram.c" /* yacc.c:1648 */
symbol_user_token_number_set ((yyvsp[-2].symbol), (yyvsp[-1].integer), (yylsp[-1]));
symbol_make_alias ((yyvsp[-2].symbol), (yyvsp[0].symbol), (yyloc));
insert_after(2, "</PYACC_Section1Or2_Symbol>");
- sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol user_token=\"%d\">", (yyvsp[-1].integer));
+ sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol token=\"%d\">", (yyvsp[-1].integer));
insert_before(0, gram_piece_temp);
}
#line 2740 "src/parse-gram.c" /* yacc.c:1648 */
/* Free the current lhs. */
current_lhs (0, (yylsp[-3]), 0);
insert_after(3, "</PYACC_Section2_Rules>");
+ /* the following will capture the ':', aesthetically unpleasing but benign */
+ insert_after(0, "</PYACC_Section1Or2_Symbol>");
+ insert_before(0, "<PYACC_Section1Or2_Symbol>");
insert_before(0, "<PYACC_Section2_Rules>");
}
-#line 2765 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2768 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 84:
-#line 777 "src/parse-gram.y" /* yacc.c:1648 */
+#line 780 "src/parse-gram.y" /* yacc.c:1648 */
{ grammar_current_rule_end ((yylsp[0])); /*}*/
- insert_after(0, "</PYACC_Section2_Rules_RHS>");
- insert_before(0, "<PYACC_Section2_Rules_RHS>");
+ insert_after(0, "</PYACC_Production>");
+ insert_before(0, "<PYACC_Production>");
}
-#line 2774 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2777 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 85:
-#line 781 "src/parse-gram.y" /* yacc.c:1648 */
+#line 784 "src/parse-gram.y" /* yacc.c:1648 */
{ grammar_current_rule_end ((yylsp[0])); /*}*/
- insert_after(2, "</PYACC_Section2_Rules_RHS>");
- insert_before(2, "<PYACC_Section2_Rules_RHS>");
+ insert_after(2, "</PYACC_Production>");
+ insert_before(2, "<PYACC_Production>");
}
-#line 2783 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2786 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 87:
-#line 791 "src/parse-gram.y" /* yacc.c:1648 */
+#line 794 "src/parse-gram.y" /* yacc.c:1648 */
{ grammar_current_rule_begin (current_lhs_symbol, current_lhs_location,
current_lhs_named_ref); /*}*/
/* in this case, want empty rule associated with stuff on the right of us */
gram_piece[gram_piece2] = gram_piece[gram_piece2 - 1]; /* empty */
gram_piece[gram_piece2 - 1] = temp;
}
-#line 2799 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2802 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 88:
-#line 803 "src/parse-gram.y" /* yacc.c:1648 */
+#line 806 "src/parse-gram.y" /* yacc.c:1648 */
{ grammar_current_rule_symbol_append ((yyvsp[-1].symbol), (yylsp[-1]), (yyvsp[0].named_ref)); /*}*/
- insert_after(2, "</PYACC_Section2_Rules_RHS_Symbol>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_Symbol>");
+ insert_after(2, "</PYACC_Production_Symbol>");
+ insert_before(1, "<PYACC_Production_Symbol>");
}
-#line 2808 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2811 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 89:
-#line 808 "src/parse-gram.y" /* yacc.c:1648 */
+#line 811 "src/parse-gram.y" /* yacc.c:1648 */
{ code_piece_append("<PYACC_BracedCode>"); grammar_current_rule_action_append ((yyvsp[-1].code), (yylsp[-1]), (yyvsp[0].named_ref), false); /*}*/
code_piece_append("</PYACC_BracedCode>");
code_piece_pack();
free(gram_piece[gram_piece2 + 2]);
gram_piece[gram_piece2 + 2] = strdup(code_piece[code_piece0 - 1]);
- insert_after(2, "</PYACC_Section2_Rules_RHS_Action>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_Action>");
+ insert_after(2, "</PYACC_Production_Action>");
+ insert_before(1, "<PYACC_Production_Action>");
}
-#line 2821 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2824 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 90:
-#line 817 "src/parse-gram.y" /* yacc.c:1648 */
+#line 820 "src/parse-gram.y" /* yacc.c:1648 */
{ grammar_current_rule_action_append ((yyvsp[0].code), (yylsp[0]), NULL, true); }
-#line 2827 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2830 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 91:
-#line 819 "src/parse-gram.y" /* yacc.c:1648 */
+#line 822 "src/parse-gram.y" /* yacc.c:1648 */
{ grammar_current_rule_empty_set ((yylsp[0])); /*}*/
- insert_after(1, "</PYACC_Section2_Rules_RHS_Empty>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_Empty>");
+ insert_after(1, "</PYACC_Production_Empty>");
+ insert_before(1, "<PYACC_Production_Empty>");
}
-#line 2836 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2839 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 92:
-#line 824 "src/parse-gram.y" /* yacc.c:1648 */
+#line 827 "src/parse-gram.y" /* yacc.c:1648 */
{ grammar_current_rule_prec_set ((yyvsp[0].symbol), (yylsp[0])); /*}*/
- insert_after(2, "</PYACC_Section2_Rules_RHS_Prec>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_Prec>");
+ insert_after(2, "</PYACC_Production_Prec>");
+ insert_before(1, "<PYACC_Production_Prec>");
}
-#line 2845 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2848 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 93:
-#line 829 "src/parse-gram.y" /* yacc.c:1648 */
+#line 832 "src/parse-gram.y" /* yacc.c:1648 */
{ grammar_current_rule_dprec_set ((yyvsp[0].integer), (yylsp[0])); /*}*/
- insert_after(2, "</PYACC_Section2_Rules_RHS_DPrec>");
+ insert_after(2, "</PYACC_Production_DPrec>");
insert_after(2, "</PYACC_Int>");
insert_before(2, "<PYACC_Int>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_DPrec>");
+ insert_before(1, "<PYACC_Production_DPrec>");
}
-#line 2856 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2859 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 94:
-#line 836 "src/parse-gram.y" /* yacc.c:1648 */
+#line 839 "src/parse-gram.y" /* yacc.c:1648 */
{ grammar_current_rule_merge_set ((yyvsp[0].uniqstr), (yylsp[0])); /*}*/
- insert_after(2, "</PYACC_Section2_Rules_RHS_Merge>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_Merge>");
+ insert_after(2, "</PYACC_Production_Merge>");
+ insert_before(1, "<PYACC_Production_Merge>");
}
-#line 2865 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2868 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 95:
-#line 843 "src/parse-gram.y" /* yacc.c:1648 */
+#line 846 "src/parse-gram.y" /* yacc.c:1648 */
{ (yyval.named_ref) = 0; }
-#line 2871 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2874 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 96:
-#line 844 "src/parse-gram.y" /* yacc.c:1648 */
+#line 847 "src/parse-gram.y" /* yacc.c:1648 */
{ (yyval.named_ref) = named_ref_new ((yyvsp[0].uniqstr), (yylsp[0])); }
-#line 2877 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2880 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 98:
-#line 855 "src/parse-gram.y" /* yacc.c:1648 */
+#line 858 "src/parse-gram.y" /* yacc.c:1648 */
{ (yyval.uniqstr) = uniqstr_new ((yyvsp[0].code)); }
-#line 2883 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2886 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 99:
-#line 880 "src/parse-gram.y" /* yacc.c:1648 */
+#line 883 "src/parse-gram.y" /* yacc.c:1648 */
{ (yyval.value).kind = muscle_keyword; (yyval.value).chars = ""; }
-#line 2889 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2892 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 100:
-#line 881 "src/parse-gram.y" /* yacc.c:1648 */
+#line 884 "src/parse-gram.y" /* yacc.c:1648 */
{ (yyval.value).kind = muscle_keyword; (yyval.value).chars = (yyvsp[0].uniqstr); }
-#line 2895 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2898 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 101:
-#line 882 "src/parse-gram.y" /* yacc.c:1648 */
+#line 885 "src/parse-gram.y" /* yacc.c:1648 */
{ (yyval.value).kind = muscle_string; (yyval.value).chars = (yyvsp[0].code); }
-#line 2901 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2904 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 102:
-#line 883 "src/parse-gram.y" /* yacc.c:1648 */
+#line 886 "src/parse-gram.y" /* yacc.c:1648 */
{ (yyval.value).kind = muscle_code; (yyval.value).chars = strip_braces ((yyvsp[0].code)); }
-#line 2907 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2910 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 103:
-#line 896 "src/parse-gram.y" /* yacc.c:1648 */
+#line 899 "src/parse-gram.y" /* yacc.c:1648 */
{ (yyval.symbol) = symbol_from_uniqstr ((yyvsp[0].uniqstr), (yylsp[0])); }
-#line 2913 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2916 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 104:
-#line 898 "src/parse-gram.y" /* yacc.c:1648 */
+#line 901 "src/parse-gram.y" /* yacc.c:1648 */
{
(yyval.symbol) = symbol_get (char_name ((yyvsp[0].character)), (yylsp[0]));
symbol_class_set ((yyval.symbol), token_sym, (yylsp[0]), false);
symbol_user_token_number_set ((yyval.symbol), (yyvsp[0].character), (yylsp[0]));
}
-#line 2923 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2926 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 105:
-#line 906 "src/parse-gram.y" /* yacc.c:1648 */
+#line 909 "src/parse-gram.y" /* yacc.c:1648 */
{ (yyval.symbol) = symbol_from_uniqstr ((yyvsp[0].uniqstr), (yylsp[0])); }
-#line 2929 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2932 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 108:
-#line 918 "src/parse-gram.y" /* yacc.c:1648 */
+#line 921 "src/parse-gram.y" /* yacc.c:1648 */
{
(yyval.symbol) = symbol_get (quotearg_style (c_quoting_style, (yyvsp[0].code)), (yylsp[0]));
symbol_class_set ((yyval.symbol), token_sym, (yylsp[0]), false);
}
-#line 2938 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2941 "src/parse-gram.c" /* yacc.c:1648 */
break;
case 110:
-#line 927 "src/parse-gram.y" /* yacc.c:1648 */
+#line 930 "src/parse-gram.y" /* yacc.c:1648 */
{
#if 0
int gram_piece0_save = gram_piece0, gram_piece1_save = gram_piece1;
insert_after(1, "</PYACC_Section3>");
insert_after(0, "<PYACC_Section3>");
}
-#line 2963 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2966 "src/parse-gram.c" /* yacc.c:1648 */
break;
-#line 2967 "src/parse-gram.c" /* yacc.c:1648 */
+#line 2970 "src/parse-gram.c" /* yacc.c:1648 */
default: break;
}
if (yychar_backup != yychar)
#endif
return yyresult;
}
-#line 949 "src/parse-gram.y" /* yacc.c:1907 */
+#line 952 "src/parse-gram.y" /* yacc.c:1907 */
/* Return the location of the left-hand side of a rule whose
free(gram_piece[gram_piece2 + 2]);
gram_piece[gram_piece2 + 2] = strdup(code_piece[code_piece0 - 1]);
insert_after(1, "</PYACC_Section1Or2_Code>");
- insert_before(0, "<PYACC_Section1Or2_Code><PYACC_IDNone />");
+ insert_before(0, "<PYACC_Section1Or2_Code><PYACC_ID />");
}
| "%code" ID "{...}"
{
%token PERCENT_UNION "%union";
union_name:
- %empty { insert_before(0, "<PYACC_IDNone />"); }
+ %empty { insert_before(0, "<PYACC_ID />"); }
| ID { muscle_percent_define_insert ("api.value.union.name",
@1, muscle_keyword, $1,
MUSCLE_PERCENT_DEFINE_GRAMMAR_FILE); }
symbol_user_token_number_set ($1, $2, @2);
symbol_class_set ($1, token_sym, @1, false);
insert_after(1, "</PYACC_Section1Or2_Symbol>");
- sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol user_token=\"%d\">", $2);
+ sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol token=\"%d\">", $2);
insert_before(0, gram_piece_temp);
}
;
symbol_type_set ($1, current_type, @1);
symbol_user_token_number_set ($1, $2, @2);
insert_after(1, "</PYACC_Section1Or2_Symbol>");
- sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol user_token=\"%d\">", $2);
+ sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol token=\"%d\">", $2);
insert_before(0, gram_piece_temp);
}
| id string_as_id
symbol_user_token_number_set ($1, $2, @2);
symbol_make_alias ($1, $3, @$);
insert_after(2, "</PYACC_Section1Or2_Symbol>");
- sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol user_token=\"%d\">", $2);
+ sprintf(gram_piece_temp, "<PYACC_Section1Or2_Symbol token=\"%d\">", $2);
insert_before(0, gram_piece_temp);
}
;
/* Free the current lhs. */
current_lhs (0, @1, 0);
insert_after(3, "</PYACC_Section2_Rules>");
+ /* the following will capture the ':', aesthetically unpleasing but benign */
+ insert_after(0, "</PYACC_Section1Or2_Symbol>");
+ insert_before(0, "<PYACC_Section1Or2_Symbol>");
insert_before(0, "<PYACC_Section2_Rules>");
}
;
rhses.1:
rhs { grammar_current_rule_end (@1); /*}*/
- insert_after(0, "</PYACC_Section2_Rules_RHS>");
- insert_before(0, "<PYACC_Section2_Rules_RHS>");
+ insert_after(0, "</PYACC_Production>");
+ insert_before(0, "<PYACC_Production>");
}
| rhses.1 "|" rhs { grammar_current_rule_end (@3); /*}*/
- insert_after(2, "</PYACC_Section2_Rules_RHS>");
- insert_before(2, "<PYACC_Section2_Rules_RHS>");
+ insert_after(2, "</PYACC_Production>");
+ insert_before(2, "<PYACC_Production>");
}
| rhses.1 ";"
;
}
| rhs symbol named_ref.opt
{ grammar_current_rule_symbol_append ($2, @2, $3); /*}*/
- insert_after(2, "</PYACC_Section2_Rules_RHS_Symbol>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_Symbol>");
+ insert_after(2, "</PYACC_Production_Symbol>");
+ insert_before(1, "<PYACC_Production_Symbol>");
}
| rhs "{...}" named_ref.opt
{ code_piece_append("<PYACC_BracedCode>"); grammar_current_rule_action_append ($2, @2, $3, false); /*}*/
code_piece_pack();
free(gram_piece[gram_piece2 + 2]);
gram_piece[gram_piece2 + 2] = strdup(code_piece[code_piece0 - 1]);
- insert_after(2, "</PYACC_Section2_Rules_RHS_Action>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_Action>");
+ insert_after(2, "</PYACC_Production_Action>");
+ insert_before(1, "<PYACC_Production_Action>");
}
| rhs "%?{...}"
{ grammar_current_rule_action_append ($2, @2, NULL, true); }
| rhs "%empty"
{ grammar_current_rule_empty_set (@2); /*}*/
- insert_after(1, "</PYACC_Section2_Rules_RHS_Empty>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_Empty>");
+ insert_after(1, "</PYACC_Production_Empty>");
+ insert_before(1, "<PYACC_Production_Empty>");
}
| rhs "%prec" symbol
{ grammar_current_rule_prec_set ($3, @3); /*}*/
- insert_after(2, "</PYACC_Section2_Rules_RHS_Prec>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_Prec>");
+ insert_after(2, "</PYACC_Production_Prec>");
+ insert_before(1, "<PYACC_Production_Prec>");
}
| rhs "%dprec" INT
{ grammar_current_rule_dprec_set ($3, @3); /*}*/
- insert_after(2, "</PYACC_Section2_Rules_RHS_DPrec>");
+ insert_after(2, "</PYACC_Production_DPrec>");
insert_after(2, "</PYACC_Int>");
insert_before(2, "<PYACC_Int>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_DPrec>");
+ insert_before(1, "<PYACC_Production_DPrec>");
}
| rhs "%merge" TAG
{ grammar_current_rule_merge_set ($3, @3); /*}*/
- insert_after(2, "</PYACC_Section2_Rules_RHS_Merge>");
- insert_before(1, "<PYACC_Section2_Rules_RHS_Merge>");
+ insert_after(2, "</PYACC_Production_Merge>");
+ insert_before(1, "<PYACC_Production_Merge>");
}
;