Further rearrangement to put everything inside the PLex class
authorNick Downing <downing.nick@gmail.com>
Sun, 1 Jul 2018 13:01:05 +0000 (23:01 +1000)
committerNick Downing <downing.nick@gmail.com>
Sun, 1 Jul 2018 14:47:59 +0000 (00:47 +1000)
src/main.c
src/parse.c
src/parse.y
src/scan.c
src/scan.l

index b060a03..6cd30a6 100644 (file)
@@ -169,7 +169,7 @@ int flex_main (int argc, char *argv[])
 
 #if 1
  void piece_append(const char *str);
- piece_append("<RefList><PLexSpecification ref=\"0\"><Section1>");
+ piece_append("<RefList><PLex ref=\"0\"><PLex_Section1>");
 #endif
        readin ();
 
@@ -191,7 +191,7 @@ int flex_main (int argc, char *argv[])
        make_tables ();
 #if 1
  /* at this point flexscan() has been called to copy section 3 to the output */
- piece_append("</PLexSpecification></RefList>");
+ piece_append("</PLex></RefList>");
 
  extern char *piece[];
  extern int piece1;
index 49be98e..789d7f3 100644 (file)
@@ -1554,8 +1554,8 @@ yyreduce:
   case 4:
 #line 156 "parse.y" /* yacc.c:1646  */
     {
- insert_after(2, "</Section1_StartConditions>");
- sprintf(piece_temp, "<Section1_StartConditions exclusive=\"%s\">", xcluflg ? "true" : "false");
+ insert_after(2, "</PLex_Section1_StartConditions>");
+ sprintf(piece_temp, "<PLex_Section1_StartConditions exclusive=\"%s\">", xcluflg ? "true" : "false");
  insert_before(1, piece_temp);
  }
 #line 1532 "parse.c" /* yacc.c:1646  */
@@ -1564,8 +1564,8 @@ yyreduce:
   case 5:
 #line 162 "parse.y" /* yacc.c:1646  */
     {
- insert_after(1, "</Section1_Options>");
- insert_before(1, "<Section1_Options>");
+ insert_after(1, "</PLex_Section1_Options>");
+ insert_before(1, "<PLex_Section1_Options>");
  }
 #line 1541 "parse.c" /* yacc.c:1646  */
     break;
@@ -1683,8 +1683,8 @@ yyreduce:
   case 23:
 #line 246 "parse.y" /* yacc.c:1646  */
     { scon_stk_ptr = (yyvsp[-3]); /*}*/
- insert_after(4, "</Section2_Rule>");
- insert_before(1, "<Section2_Rule>");
+ insert_after(4, "</PLex_Section2_Rule>");
+ insert_before(1, "<PLex_Section2_Rule>");
  }
 #line 1660 "parse.c" /* yacc.c:1646  */
     break;
@@ -1692,8 +1692,8 @@ yyreduce:
   case 24:
 #line 251 "parse.y" /* yacc.c:1646  */
     { scon_stk_ptr = (yyvsp[-3]); /*}*/
- insert_after(4, "</Section2_CompoundRule>");
- insert_before(1, "<Section2_CompoundRule>");
+ insert_after(4, "</PLex_Section2_CompoundRule>");
+ insert_before(1, "<PLex_Section2_CompoundRule>");
  }
 #line 1669 "parse.c" /* yacc.c:1646  */
     break;
@@ -1748,8 +1748,8 @@ yyreduce:
                                        pinpoint_message(
                        "'^' operator results in sub-optimal performance" );
                                }
- insert_after(1, "</Section2_Rule_BOLRule>");
- insert_before(0, "<Section2_Rule_BOLRule>");
+ insert_after(1, "</PLex_Section2_Rule_BOLRule>");
+ insert_before(0, "<PLex_Section2_Rule_BOLRule>");
                        }
 #line 1725 "parse.c" /* yacc.c:1646  */
     break;
@@ -1803,8 +1803,8 @@ yyreduce:
                                else
                                        build_eof_action();
                                }
- insert_after(0, "</Section2_Rule_EOFRule><RegexNone />");
- insert_before(0, "<Section2_Rule_EOFRule>");
+ insert_after(0, "</PLex_Section2_Rule_EOFRule><RegexNone />");
+ insert_before(0, "<PLex_Section2_Rule_EOFRule>");
                        }
 #line 1780 "parse.c" /* yacc.c:1646  */
     break;
@@ -1824,8 +1824,8 @@ yyreduce:
   case 32:
 #line 367 "parse.y" /* yacc.c:1646  */
     { (yyval) = (yyvsp[-2]); /*}*/
- insert_after(3, "</Section2_StartConditions>");
- insert_before(0, "<Section2_StartConditions>");
+ insert_after(3, "</PLex_Section2_StartConditions>");
+ insert_before(0, "<PLex_Section2_StartConditions>");
  }
 #line 1801 "parse.c" /* yacc.c:1646  */
     break;
@@ -1846,8 +1846,8 @@ yyreduce:
                                if ( j > scon_stk_ptr )
                                        scon_stk[++scon_stk_ptr] = i;
                                }
- insert_after(2, "</Section2_StartConditions>");
- insert_before(0, "<Section2_StartConditions wildcard=\"true\">");
+ insert_after(2, "</PLex_Section2_StartConditions>");
+ insert_before(0, "<PLex_Section2_StartConditions wildcard=\"true\">");
                        }
 #line 1823 "parse.c" /* yacc.c:1646  */
     break;
@@ -1863,7 +1863,7 @@ yyreduce:
  piece[piece2 + 1] = piece[piece2]; /* empty */
  piece[piece2] = piece[piece2 - 1]; /* empty */
  piece[piece2 - 1] = temp;
- insert_before(0, "<Section2_StartConditions />");
+ insert_before(0, "<PLex_Section2_StartConditions />");
  }
 #line 1839 "parse.c" /* yacc.c:1646  */
     break;
index cbf8d43..ebab27f 100644 (file)
@@ -154,14 +154,14 @@ initlex           :
 
 sect1          :  sect1 startconddecl namelist1
  {
- insert_after(2, "</Section1_StartConditions>");
- sprintf(piece_temp, "<Section1_StartConditions exclusive=\"%s\">", xcluflg ? "true" : "false");
+ insert_after(2, "</PLex_Section1_StartConditions>");
+ sprintf(piece_temp, "<PLex_Section1_StartConditions exclusive=\"%s\">", xcluflg ? "true" : "false");
  insert_before(1, piece_temp);
  }
                |  sect1 options
  {
- insert_after(1, "</Section1_Options>");
- insert_before(1, "<Section1_Options>");
+ insert_after(1, "</PLex_Section1_Options>");
+ insert_before(1, "<PLex_Section1_Options>");
  }
                |
                |  error
@@ -244,13 +244,13 @@ option            :  TOK_OUTFILE '=' NAME
 
 sect2          :  sect2 scon initforrule flexrule '\n'
                        { scon_stk_ptr = $2; /*}*/
- insert_after(4, "</Section2_Rule>");
- insert_before(1, "<Section2_Rule>");
+ insert_after(4, "</PLex_Section2_Rule>");
+ insert_before(1, "<PLex_Section2_Rule>");
  }
                |  sect2 scon '{' sect2 '}'
                        { scon_stk_ptr = $2; /*}*/
- insert_after(4, "</Section2_CompoundRule>");
- insert_before(1, "<Section2_CompoundRule>");
+ insert_after(4, "</PLex_Section2_CompoundRule>");
+ insert_before(1, "<PLex_Section2_CompoundRule>");
  }
                |
                ;
@@ -302,8 +302,8 @@ flexrule    :  '^' rule
                                        pinpoint_message(
                        "'^' operator results in sub-optimal performance" );
                                }
- insert_after(1, "</Section2_Rule_BOLRule>");
- insert_before(0, "<Section2_Rule_BOLRule>");
+ insert_after(1, "</PLex_Section2_Rule_BOLRule>");
+ insert_before(0, "<PLex_Section2_Rule_BOLRule>");
                        }
 
                |  rule
@@ -351,8 +351,8 @@ flexrule    :  '^' rule
                                else
                                        build_eof_action();
                                }
- insert_after(0, "</Section2_Rule_EOFRule><RegexNone />");
- insert_before(0, "<Section2_Rule_EOFRule>");
+ insert_after(0, "</PLex_Section2_Rule_EOFRule><RegexNone />");
+ insert_before(0, "<PLex_Section2_Rule_EOFRule>");
                        }
 
                |  error
@@ -365,8 +365,8 @@ scon_stk_ptr        :
 
 scon           :  '<' scon_stk_ptr namelist2 '>'
                        { $$ = $2; /*}*/
- insert_after(3, "</Section2_StartConditions>");
- insert_before(0, "<Section2_StartConditions>");
+ insert_after(3, "</PLex_Section2_StartConditions>");
+ insert_before(0, "<PLex_Section2_StartConditions>");
  }
 
                |  '<' '*' '>'
@@ -384,8 +384,8 @@ scon                :  '<' scon_stk_ptr namelist2 '>'
                                if ( j > scon_stk_ptr )
                                        scon_stk[++scon_stk_ptr] = i;
                                }
- insert_after(2, "</Section2_StartConditions>");
- insert_before(0, "<Section2_StartConditions wildcard=\"true\">");
+ insert_after(2, "</PLex_Section2_StartConditions>");
+ insert_before(0, "<PLex_Section2_StartConditions wildcard=\"true\">");
                        }
 
                |
@@ -398,7 +398,7 @@ scon                :  '<' scon_stk_ptr namelist2 '>'
  piece[piece2 + 1] = piece[piece2]; /* empty */
  piece[piece2] = piece[piece2 - 1]; /* empty */
  piece[piece2 - 1] = temp;
- insert_before(0, "<Section2_StartConditions />");
+ insert_before(0, "<PLex_Section2_StartConditions />");
  }
                ;
 
index 7383a53..b2b0d43 100644 (file)
@@ -7735,9 +7735,9 @@ extern const char *escaped_qstart, *escaped_qend;
        if(yyleng < MAXLINE) \
          { \
        strncpy( nmstr, yytext, sizeof(nmstr) ); \
- piece_append("<Name>"); \
+ piece_append("<PLex_Name>"); \
  flush(); \
- piece_append("</Name>"); \
+ piece_append("</PLex_Name>"); \
        return NAME; \
         } \
        else \
@@ -7774,14 +7774,14 @@ extern const char *escaped_qstart, *escaped_qend;
     yy_push_state(CODEBLOCK); \
     if ((indented_code = x)) ACTION_ECHO; \
  flush(); \
- piece_append("<CodeBlock>"); \
+ piece_append("<PLex_CodeBlock>"); \
 } while(0)
 
 #define END_CODEBLOCK do { \
     yy_pop_state();\
     add_action(M4QEND); \
     if (!indented_code) line_directive_out(NULL, 0);\
- piece_append("</CodeBlock>"); \
+ piece_append("</PLex_CodeBlock>"); \
 } while (0)
 
 /* Nick */
@@ -8268,7 +8268,7 @@ YY_RULE_SETUP
                        line_directive_out(NULL, 1);
                        BEGIN(SECT2PROLOG);
 #if 1
- piece_append("</Section1>");
+ piece_append("</PLex_Section1>");
  piece_pack();
 #if 1
  piece_esc(yytext, strlen(yytext));
@@ -8278,7 +8278,7 @@ YY_RULE_SETUP
  piece_esc(yytext, strlen(yytext));
  piece_append("</token>");
 #endif
- piece_append("<Section2>");
+ piece_append("<PLex_Section2>");
  piece_pack();
  return ~SECTEND;
 #else
@@ -9085,7 +9085,7 @@ case YY_STATE_EOF(SECT2PROLOG):
                        sectnum = 0;
 #if 1
  piece_pack();
- piece_append("</Section2>");
+ piece_append("</PLex_Section2>");
 #if 0
  piece_append("<token value=\"0\" />");
 #endif
@@ -9113,7 +9113,7 @@ YY_RULE_SETUP
                        bracelevel = 1;
                        BEGIN(PERCENT_BRACE_ACTION);
  flush();
- piece_append("<PercentBraceAction>");
+ piece_append("<PLex_PercentBraceAction>");
                        }
        YY_BREAK
 case 139:
@@ -9180,14 +9180,14 @@ YY_RULE_SETUP
  piece_append("</token>");
 #endif
  piece_pack();
- piece_append("<PercentBraceAction>");
+ piece_append("<PLex_PercentBraceAction>");
  return ~'\n';
 #else
                                return '\n';
 #endif
                                }
  flush();
- piece_append("<PercentBraceAction>");
+ piece_append("<PLex_PercentBraceAction>");
                        }
        YY_BREAK
 case 145:
@@ -9261,7 +9261,7 @@ YY_RULE_SETUP
  piece_append("</token>");
 #endif
  piece_pack();
- piece_append("<Section2_Rule_Action>");
+ piece_append("<PLex_Section2_Rule_Action>");
  return ~'\n';
 #else
                     return '\n';
@@ -9303,7 +9303,7 @@ YY_RULE_SETUP
  piece_append("</token>");
 #endif
  piece_pack();
- piece_append("<Section2_Rule_Action>");
+ piece_append("<PLex_Section2_Rule_Action>");
  return ~'\n';
 #else
                     return '\n';
@@ -9328,7 +9328,7 @@ YY_RULE_SETUP
                        outn("/* Begin user sect3 */");
 #if 1
  piece_pack();
- piece_append("</Section2>");
+ piece_append("</PLex_Section2>");
 #if 1
  piece_esc(yytext, strlen(yytext));
 #else
@@ -9337,7 +9337,7 @@ YY_RULE_SETUP
  piece_append("</token>");
 #endif
  piece_pack();
- piece_append("<Section3>");
+ piece_append("<PLex_Section3>");
  return ~YY_NULL;
 #else
                        yyterminate(); /* to stop the parser */
@@ -9538,7 +9538,7 @@ case YY_STATE_EOF(SECT2):
                        sectnum = 0;
 #if 1
  piece_pack();
- piece_append("</Section2>");
+ piece_append("</PLex_Section2>");
 #if 0
  piece_append("<token value=\"0\" />");
 #endif
@@ -9944,7 +9944,7 @@ YY_RULE_SETUP
 
             doing_rule_action = doing_codeblock = false;
             BEGIN(SECT2);
- piece_append("</PercentBraceAction>");
+ piece_append("</PLex_PercentBraceAction>");
         }
     }
        YY_BREAK
@@ -10122,7 +10122,7 @@ case YY_STATE_EOF(SECT3):
         sectnum = 0;
 #if 1
  piece_pack();
- piece_append("</Section3>");
+ piece_append("</PLex_Section3>");
 #if 0
  piece_append("<token value=\"0\" />");
 #endif
@@ -10162,7 +10162,7 @@ case YY_STATE_EOF(SECT3_NOESCAPE):
        sectnum = 0;
 #if 1
  piece_pack();
- piece_append("</Section3>");
+ piece_append("</PLex_Section3>");
 #if 0
  piece_append("<token value=\"0\" />");
 #endif
@@ -11275,15 +11275,15 @@ void set_input_file( char *file )
 
 /* Nick */
 static void markup_action(void) {
- /* append to last token text so it appears inside <Section2_Rule>..</Section2_Rule> */
+ /* append to last token text so it appears inside <PLex_Section2_Rule>..</PLex_Section2_Rule> */
  /* a problem here is that Rule has already been reduced (marked up), */
  /* because we returned a '\n' token when we detected start of action, */
- /* hence we need to move the closing </Section2_Rule> tag over to our right */
+ /* hence we need to move the closing </PLex_Section2_Rule> tag over to our right */
  int i = strlen(piece[--piece0]);
- if (i < 16 || strcmp(piece[piece0] + i - 16, "</Section2_Rule>") != 0)
+ if (i < 21 || strcmp(piece[piece0] + i - 21, "</PLex_Section2_Rule>") != 0)
   abort();
- piece[piece0][i - 16] = 0;
- piece_append("</Section2_Rule_Action></Section2_Rule>");
+ piece[piece0][i - 21] = 0;
+ piece_append("</PLex_Section2_Rule_Action></PLex_Section2_Rule>");
  piece_pack();
 }
 
@@ -11293,12 +11293,12 @@ static void markup_option(const char *name, int sense) {
  int i = piece1;
  while (--i >= piece0 && strcmp(piece[i], "no") == 0)
   ;
- sprintf(piece_temp, "<Section1_Options_%s%s>", name, sense ? " value=\"true\"" : "");
+ sprintf(piece_temp, "<PLex_Section1_Options_%s%s>", name, sense ? " value=\"true\"" : "");
  piece_insert(i + 1, piece_temp);
  flush();
- sprintf(piece_temp, "</Section1_Options_%s>", name);
+ sprintf(piece_temp, "</PLex_Section1_Options_%s>", name);
  piece_append(piece_temp);
- /* append to last token text so it appears inside <Section1_Options>..</Section1_Options> */
+ /* append to last token text so it appears inside <PLex_Section1_Options>..</PLex_Section1_Options> */
  --piece0;
  piece_pack();
 }
index 1bc9578..1975f3d 100644 (file)
@@ -78,9 +78,9 @@ extern const char *escaped_qstart, *escaped_qend;
        if(yyleng < MAXLINE) \
          { \
        strncpy( nmstr, yytext, sizeof(nmstr) ); \
- piece_append("<Name>"); \
+ piece_append("<PLex_Name>"); \
  flush(); \
- piece_append("</Name>"); \
+ piece_append("</PLex_Name>"); \
        return NAME; \
         } \
        else \
@@ -117,14 +117,14 @@ extern const char *escaped_qstart, *escaped_qend;
     yy_push_state(CODEBLOCK); \
     if ((indented_code = x)) ACTION_ECHO; \
  flush(); \
- piece_append("<CodeBlock>"); \
+ piece_append("<PLex_CodeBlock>"); \
 } while(0)
 
 #define END_CODEBLOCK do { \
     yy_pop_state();\
     add_action(M4QEND); \
     if (!indented_code) line_directive_out(NULL, 0);\
- piece_append("</CodeBlock>"); \
+ piece_append("</PLex_CodeBlock>"); \
 } while (0)
 
 /* Nick */
@@ -204,7 +204,7 @@ M4QEND      "]""]"
                        line_directive_out(NULL, 1);
                        BEGIN(SECT2PROLOG);
 #if 1
- piece_append("</Section1>");
+ piece_append("</PLex_Section1>");
  piece_pack();
 #if 1
  piece_esc(yytext, strlen(yytext));
@@ -214,7 +214,7 @@ M4QEND      "]""]"
  piece_esc(yytext, strlen(yytext));
  piece_append("</token>");
 #endif
- piece_append("<Section2>");
+ piece_append("<PLex_Section2>");
  piece_pack();
  return ~SECTEND;
 #else
@@ -537,7 +537,7 @@ M4QEND      "]""]"
                        sectnum = 0;
 #if 1
  piece_pack();
- piece_append("</Section2>");
+ piece_append("</PLex_Section2>");
 #if 0
  piece_append("<token value=\"0\" />");
 #endif
@@ -558,7 +558,7 @@ M4QEND      "]""]"
                        bracelevel = 1;
                        BEGIN(PERCENT_BRACE_ACTION);
  flush();
- piece_append("<PercentBraceAction>");
+ piece_append("<PLex_PercentBraceAction>");
                        }
 
        ^{OPTWS}"<"         {
@@ -596,14 +596,14 @@ M4QEND      "]""]"
  piece_append("</token>");
 #endif
  piece_pack();
- piece_append("<PercentBraceAction>");
+ piece_append("<PLex_PercentBraceAction>");
  return ~'\n';
 #else
                                return '\n';
 #endif
                                }
  flush();
- piece_append("<PercentBraceAction>");
+ piece_append("<PLex_PercentBraceAction>");
                        }
        {WS}"|".*{NL}   {
                         if (sf_skip_ws()){
@@ -663,7 +663,7 @@ M4QEND      "]""]"
  piece_append("</token>");
 #endif
  piece_pack();
- piece_append("<Section2_Rule_Action>");
+ piece_append("<PLex_Section2_Rule_Action>");
  return ~'\n';
 #else
                     return '\n';
@@ -701,7 +701,7 @@ M4QEND      "]""]"
  piece_append("</token>");
 #endif
  piece_pack();
- piece_append("<Section2_Rule_Action>");
+ piece_append("<PLex_Section2_Rule_Action>");
  return ~'\n';
 #else
                     return '\n';
@@ -719,7 +719,7 @@ M4QEND      "]""]"
                        outn("/* Begin user sect3 */");
 #if 1
  piece_pack();
- piece_append("</Section2>");
+ piece_append("</PLex_Section2>");
 #if 1
  piece_esc(yytext, strlen(yytext));
 #else
@@ -728,7 +728,7 @@ M4QEND      "]""]"
  piece_append("</token>");
 #endif
  piece_pack();
- piece_append("<Section3>");
+ piece_append("<PLex_Section3>");
  return ~YY_NULL;
 #else
                        yyterminate(); /* to stop the parser */
@@ -888,7 +888,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0';  /* chop trailing brace */
                        sectnum = 0;
 #if 1
  piece_pack();
- piece_append("</Section2>");
+ piece_append("</PLex_Section2>");
 #if 0
  piece_append("<token value=\"0\" />");
 #endif
@@ -1049,7 +1049,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0';  /* chop trailing brace */
 
             doing_rule_action = doing_codeblock = false;
             BEGIN(SECT2);
- piece_append("</PercentBraceAction>");
+ piece_append("</PLex_PercentBraceAction>");
         }
     }
 }
@@ -1125,7 +1125,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0';  /* chop trailing brace */
         sectnum = 0;
 #if 1
  piece_pack();
- piece_append("</Section3>");
+ piece_append("</PLex_Section3>");
 #if 0
  piece_append("<token value=\"0\" />");
 #endif
@@ -1145,7 +1145,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0';  /* chop trailing brace */
        sectnum = 0;
 #if 1
  piece_pack();
- piece_append("</Section3>");
+ piece_append("</PLex_Section3>");
 #if 0
  piece_append("<token value=\"0\" />");
 #endif
@@ -1198,15 +1198,15 @@ void set_input_file( char *file )
 
 /* Nick */
 static void markup_action(void) {
- /* append to last token text so it appears inside <Section2_Rule>..</Section2_Rule> */
+ /* append to last token text so it appears inside <PLex_Section2_Rule>..</PLex_Section2_Rule> */
  /* a problem here is that Rule has already been reduced (marked up), */
  /* because we returned a '\n' token when we detected start of action, */
- /* hence we need to move the closing </Section2_Rule> tag over to our right */
+ /* hence we need to move the closing </PLex_Section2_Rule> tag over to our right */
  int i = strlen(piece[--piece0]);
- if (i < 16 || strcmp(piece[piece0] + i - 16, "</Section2_Rule>") != 0)
+ if (i < 21 || strcmp(piece[piece0] + i - 21, "</PLex_Section2_Rule>") != 0)
   abort();
- piece[piece0][i - 16] = 0;
- piece_append("</Section2_Rule_Action></Section2_Rule>");
+ piece[piece0][i - 21] = 0;
+ piece_append("</PLex_Section2_Rule_Action></PLex_Section2_Rule>");
  piece_pack();
 }
 
@@ -1216,12 +1216,12 @@ static void markup_option(const char *name, int sense) {
  int i = piece1;
  while (--i >= piece0 && strcmp(piece[i], "no") == 0)
   ;
- sprintf(piece_temp, "<Section1_Options_%s%s>", name, sense ? " value=\"true\"" : "");
+ sprintf(piece_temp, "<PLex_Section1_Options_%s%s>", name, sense ? " value=\"true\"" : "");
  piece_insert(i + 1, piece_temp);
  flush();
- sprintf(piece_temp, "</Section1_Options_%s>", name);
+ sprintf(piece_temp, "</PLex_Section1_Options_%s>", name);
  piece_append(piece_temp);
- /* append to last token text so it appears inside <Section1_Options>..</Section1_Options> */
+ /* append to last token text so it appears inside <PLex_Section1_Options>..</PLex_Section1_Options> */
  --piece0;
  piece_pack();
 }