velocity-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From cbris...@apache.org
Subject svn commit: r1843127 - /velocity/engine/trunk/velocity-engine-core/src/main/parser/Parser.jjt
Date Mon, 08 Oct 2018 11:00:31 GMT
Author: cbrisson
Date: Mon Oct  8 11:00:31 2018
New Revision: 1843127

URL: http://svn.apache.org/viewvc?rev=1843127&view=rev
Log:
[engine] Improve parser debugging output

Modified:
    velocity/engine/trunk/velocity-engine-core/src/main/parser/Parser.jjt

Modified: velocity/engine/trunk/velocity-engine-core/src/main/parser/Parser.jjt
URL: http://svn.apache.org/viewvc/velocity/engine/trunk/velocity-engine-core/src/main/parser/Parser.jjt?rev=1843127&r1=1843126&r2=1843127&view=diff
==============================================================================
--- velocity/engine/trunk/velocity-engine-core/src/main/parser/Parser.jjt (original)
+++ velocity/engine/trunk/velocity-engine-core/src/main/parser/Parser.jjt Mon Oct  8 11:00:31
2018
@@ -68,11 +68,11 @@ options
     USER_CHAR_STREAM=true;
 
     /**
-     *  for debugging purposes.  Keep false
+     *  for debugging purposes. Those are now handled from within javacc-maven-plugin debugging
flags in pom.xml
+    DEBUG_PARSER = true;
+    DEBUG_LOOKAHEAD = true;
+    DEBUG_TOKEN_MANAGER = true;
      */
-    DEBUG_PARSER = false;
-    DEBUG_LOOKAHEAD = false;
-    DEBUG_TOKEN_MANAGER = false;
 }
 
 PARSER_BEGIN(Parser)
@@ -402,6 +402,7 @@ TOKEN_MGR_DECLS:
 
     List stateStack = new ArrayList(50);
 
+    /* More debug output */
     public boolean debugPrint = false;
 
     private boolean inReference;
@@ -409,12 +410,19 @@ TOKEN_MGR_DECLS:
     public  boolean inSet;
 
     /**
-     *  pushes the current state onto the 'state stack',
-     *  and maintains the parens counts
-     *  public because we need it in PD & VM handling
+     * Switches to a new state (add some log to the default method)
+     */
+     public void switchTo(int lexState)
+     {
+        if( debugPrint )
+            System.out.println(" switch to " + lexStateNames[lexState]);
+        SwitchTo(lexState);
+     }
+
+    /**
+     *  pops a state off the stack, and restores paren counts
      *
-     *  @return boolean : success.  It can fail if the state machine
-     *     gets messed up (do don't mess it up :)
+     *  @return boolean : success of operation
      */
     public boolean stateStackPop()
     {
@@ -427,34 +435,34 @@ TOKEN_MGR_DECLS:
         {
             // empty stack
             lparen=0;
-            SwitchTo(DEFAULT);
+            switchTo(DEFAULT);
             return false;
         }
 
         if( debugPrint )
-            System.out.println(
-                " stack pop (" + stateStack.size() + ") : lparen=" +
-                    s.lparen +
-                        " newstate=" + s.lexstate );
+            System.out.println(" stack pop (" + stateStack.size() + ")");
 
         lparen = s.lparen;
         rparen = s.rparen;
 
-        SwitchTo(s.lexstate);
+        switchTo(s.lexstate);
 
         return true;
     }
 
     /**
-     *  pops a state off the stack, and restores paren counts
+     *  pushes the current state onto the 'state stack',
+     *  and maintains the parens counts
+     *  public because we need it in PD & VM handling
      *
-     *  @return boolean : success of operation
+     *  @return boolean : success.  It can fail if the state machine
+     *     gets messed up (do don't mess it up :)
      */
     public boolean stateStackPush()
     {
         if( debugPrint )
             System.out.println(" (" + stateStack.size() + ") pushing cur state : " +
-                curLexState );
+                lexStateNames[curLexState] );
 
         ParserState s = new ParserState();
         s.lparen = lparen;
@@ -562,7 +570,7 @@ TOKEN:
    <INDEX_LBRACKET: "[">
    {
      stateStackPush();
-     SwitchTo(REFINDEX);
+     switchTo(REFINDEX);
    }
 
 }
@@ -618,7 +626,7 @@ TOKEN:
          */
 
         if (curLexState == REFMODIFIER )
-            SwitchTo( REFMOD2 );
+            switchTo( REFMOD2 );
     }
 }
 
@@ -651,7 +659,7 @@ TOKEN:
          * $foo.bar().blargh().woogie().doogie()
          */
 
-        SwitchTo( REFMOD3 );
+        switchTo( REFMOD3 );
     }
 }
 
@@ -698,11 +706,11 @@ TOKEN:
         if (! inComment)
         {
             if ( debugPrint )
-                System.out.print("#set :  going to " + DIRECTIVE );
+                System.out.println(" #set :  going to DIRECTIVE" );
 
             stateStackPush();
             inSet = true;
-            SwitchTo(DIRECTIVE);
+            switchTo(DIRECTIVE);
         }
 
         /*
@@ -719,7 +727,7 @@ TOKEN:
              */
 
             if (curLexState == REFMODIFIER )
-                SwitchTo( REFMOD2 );
+                switchTo( REFMOD2 );
         }
    }
 }
@@ -749,14 +757,14 @@ MORE :
             inReference = true;
 
             if ( debugPrint )
-                System.out.print( "$  : going to " + PRE_REFERENCE );
+                System.out.println( " $  : going to PRE_REFERENCE" );
 
             /* do not push PRE states */
             if (curLexState != PRE_REFERENCE && curLexState != PRE_DIRECTIVE)
             {
                 stateStackPush();
             }
-            SwitchTo(PRE_REFERENCE);
+            switchTo(PRE_REFERENCE);
         }
     }
 
@@ -778,14 +786,14 @@ MORE :
             inReference = true;
 
             if ( debugPrint )
-                System.out.print( "$!  : going to " + PRE_REFERENCE );
+                System.out.println( " $!  : going to PRE_REFERENCE" );
 
             /* do not push PRE states */
             if (curLexState != PRE_REFERENCE && curLexState != PRE_DIRECTIVE)
             {
                 stateStackPush();
             }
-            SwitchTo(PRE_REFERENCE);
+            switchTo(PRE_REFERENCE);
         }
     }
 
@@ -799,7 +807,7 @@ MORE :
             {
                 stateStackPush();
             }
-           SwitchTo( IN_TEXTBLOCK );
+           switchTo( IN_TEXTBLOCK );
        }
     }
 
@@ -814,7 +822,7 @@ MORE :
             {
 	        stateStackPush();
             }
-	    SwitchTo( IN_FORMAL_COMMENT);
+	    switchTo( IN_FORMAL_COMMENT);
     	}
     }
 
@@ -828,7 +836,7 @@ MORE :
             {
 	        stateStackPush();
             }
-	    SwitchTo( IN_MULTI_LINE_COMMENT );
+	    switchTo( IN_MULTI_LINE_COMMENT );
     	}
     }
 
@@ -850,14 +858,14 @@ MORE :
             }
 
             if ( debugPrint )
-                System.out.print("# :  going to " + DIRECTIVE );
+                System.out.println(" # :  going to PRE_DIRECTIVE" );
 
             /* do not push PRE states */
             if (curLexState != PRE_REFERENCE && curLexState != PRE_DIRECTIVE)
             {
                 stateStackPush();
             }
-            SwitchTo(PRE_DIRECTIVE);
+            switchTo(PRE_DIRECTIVE);
         }
   }
 }
@@ -879,9 +887,9 @@ TOKEN :
 
             inComment = true;
             stateStackPush();
-            SwitchTo(IN_SINGLE_LINE_COMMENT);
+            switchTo(IN_SINGLE_LINE_COMMENT);
         }
-     }
+   }
 }
 
 /* -----------------------------------------------------------------------
@@ -1070,12 +1078,12 @@ TOKEN :
 
 |   <IF_DIRECTIVE: "if" | "{if}">
     {
-        SwitchTo(DIRECTIVE);
+        switchTo(DIRECTIVE);
     }
 
 |   <ELSEIF: "elseif" | "{elseif}">
     {
-        SwitchTo(DIRECTIVE);
+        switchTo(DIRECTIVE);
     }
 
 |   <ELSE: "else" | "{else}">
@@ -1194,7 +1202,7 @@ TOKEN :
     {
         if (curLexState == PRE_REFERENCE)
         {
-            SwitchTo(REFERENCE);
+            switchTo(REFERENCE);
         }
     }
 }
@@ -1220,7 +1228,7 @@ TOKEN:
 
         if ( debugPrint )
             System.out.print("DOT : switching to " + REFMODIFIER);
-        SwitchTo(REFMODIFIER);
+        switchTo(REFMODIFIER);
 
     }
 }
@@ -1595,7 +1603,7 @@ boolean Directive() :
          *  now, switch us out of PRE_DIRECTIVE
          */
 
-        token_source.SwitchTo(DIRECTIVE);
+        token_source.switchTo(DIRECTIVE);
         argPos = 0;
     }
 
@@ -2174,7 +2182,6 @@ void PrimaryExpression() #void : {}
     ( <WHITESPACE> | <NEWLINE> )*
 }
 
-
 /* ======================================================================
 
    Notes



Mime
View raw message