geirm       00/12/22 04:11:29

  Modified:    src/java/org/apache/velocity/runtime/parser Parser.java
                        Parser.jj ParserTokenManager.java
  Log:
  Parser.jjt followers
  
  Revision  Changes    Path
  1.48      +102 -103  
jakarta-velocity/src/java/org/apache/velocity/runtime/parser/Parser.java
  
  Index: Parser.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-velocity/src/java/org/apache/velocity/runtime/parser/Parser.java,v
  retrieving revision 1.47
  retrieving revision 1.48
  diff -u -r1.47 -r1.48
  --- Parser.java       2000/12/21 05:56:02     1.47
  +++ Parser.java       2000/12/22 12:11:28     1.48
  @@ -21,7 +21,7 @@
    *
    * @author <a href="mailto:[EMAIL PROTECTED]">Jason van Zyl</a>
    * @author <a href="mailto:[EMAIL PROTECTED]">Geir Magnusson Jr.</a>
  - * @version $Id: Parser.java,v 1.47 2000/12/21 05:56:02 geirm Exp $ 
  + * @version $Id: Parser.java,v 1.48 2000/12/22 12:11:28 geirm Exp $ 
   */
   public class Parser/*@bgen(jjtree)*/implements ParserTreeConstants, ParserConstants 
{/*@bgen(jjtree)*/
     protected JJTParserState jjtree = new JJTParserState();/**
  @@ -32,7 +32,6 @@
       /**
        *  Name of current template we are parsing.  Passed to us in parse()
        */
  -
       String currentTemplateName = "";
   
       /** 
  @@ -103,7 +102,7 @@
       }
   
       /**
  -     *  This method gets the directives Hashtable
  +     *  This method gets a Directive from the directives Hashtable
        */
       public Directive getDirective(String directive)
       {
  @@ -2103,6 +2102,106 @@
       return retval;
     }
   
  +  final private boolean jj_3R_79() {
  +    if (jj_scan_token(MINUS)) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    if (jj_3R_66()) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    return false;
  +  }
  +
  +  final private boolean jj_3R_72() {
  +    Token xsp;
  +    xsp = jj_scanpos;
  +    if (jj_3R_78()) {
  +    jj_scanpos = xsp;
  +    if (jj_3R_79()) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    return false;
  +  }
  +
  +  final private boolean jj_3R_78() {
  +    if (jj_scan_token(PLUS)) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    if (jj_3R_66()) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    return false;
  +  }
  +
  +  final private boolean jj_3R_64() {
  +    if (jj_3R_66()) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    Token xsp;
  +    while (true) {
  +      xsp = jj_scanpos;
  +      if (jj_3R_72()) { jj_scanpos = xsp; break; }
  +      if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    }
  +    return false;
  +  }
  +
  +  final private boolean jj_3R_76() {
  +    if (jj_scan_token(LOGICAL_GE)) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    if (jj_3R_64()) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    return false;
  +  }
  +
  +  final private boolean jj_3R_75() {
  +    if (jj_scan_token(LOGICAL_LE)) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    if (jj_3R_64()) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    return false;
  +  }
  +
  +  final private boolean jj_3R_74() {
  +    if (jj_scan_token(LOGICAL_GT)) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    if (jj_3R_64()) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    return false;
  +  }
  +
  +  final private boolean jj_3R_69() {
  +    Token xsp;
  +    xsp = jj_scanpos;
  +    if (jj_3R_73()) {
  +    jj_scanpos = xsp;
  +    if (jj_3R_74()) {
  +    jj_scanpos = xsp;
  +    if (jj_3R_75()) {
  +    jj_scanpos = xsp;
  +    if (jj_3R_76()) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    return false;
  +  }
  +
  +  final private boolean jj_3R_73() {
  +    if (jj_scan_token(LOGICAL_LT)) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    if (jj_3R_64()) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    return false;
  +  }
  +
  +  final private boolean jj_3R_61() {
  +    if (jj_3R_64()) return true;
  +    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    Token xsp;
  +    while (true) {
  +      xsp = jj_scanpos;
  +      if (jj_3R_69()) { jj_scanpos = xsp; break; }
  +      if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  +    }
  +    return false;
  +  }
  +
     final private boolean jj_3R_71() {
       if (jj_scan_token(LOGICAL_NOT_EQUALS)) return true;
       if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  @@ -2650,106 +2749,6 @@
       while (true) {
         xsp = jj_scanpos;
         if (jj_3R_77()) { jj_scanpos = xsp; break; }
  -      if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    }
  -    return false;
  -  }
  -
  -  final private boolean jj_3R_79() {
  -    if (jj_scan_token(MINUS)) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    if (jj_3R_66()) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    return false;
  -  }
  -
  -  final private boolean jj_3R_72() {
  -    Token xsp;
  -    xsp = jj_scanpos;
  -    if (jj_3R_78()) {
  -    jj_scanpos = xsp;
  -    if (jj_3R_79()) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    return false;
  -  }
  -
  -  final private boolean jj_3R_78() {
  -    if (jj_scan_token(PLUS)) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    if (jj_3R_66()) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    return false;
  -  }
  -
  -  final private boolean jj_3R_64() {
  -    if (jj_3R_66()) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    Token xsp;
  -    while (true) {
  -      xsp = jj_scanpos;
  -      if (jj_3R_72()) { jj_scanpos = xsp; break; }
  -      if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    }
  -    return false;
  -  }
  -
  -  final private boolean jj_3R_76() {
  -    if (jj_scan_token(LOGICAL_GE)) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    if (jj_3R_64()) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    return false;
  -  }
  -
  -  final private boolean jj_3R_75() {
  -    if (jj_scan_token(LOGICAL_LE)) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    if (jj_3R_64()) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    return false;
  -  }
  -
  -  final private boolean jj_3R_74() {
  -    if (jj_scan_token(LOGICAL_GT)) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    if (jj_3R_64()) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    return false;
  -  }
  -
  -  final private boolean jj_3R_69() {
  -    Token xsp;
  -    xsp = jj_scanpos;
  -    if (jj_3R_73()) {
  -    jj_scanpos = xsp;
  -    if (jj_3R_74()) {
  -    jj_scanpos = xsp;
  -    if (jj_3R_75()) {
  -    jj_scanpos = xsp;
  -    if (jj_3R_76()) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    return false;
  -  }
  -
  -  final private boolean jj_3R_73() {
  -    if (jj_scan_token(LOGICAL_LT)) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    if (jj_3R_64()) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    return false;
  -  }
  -
  -  final private boolean jj_3R_61() {
  -    if (jj_3R_64()) return true;
  -    if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
  -    Token xsp;
  -    while (true) {
  -      xsp = jj_scanpos;
  -      if (jj_3R_69()) { jj_scanpos = xsp; break; }
         if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
       }
       return false;
  
  
  
  1.46      +13 -32    
jakarta-velocity/src/java/org/apache/velocity/runtime/parser/Parser.jj
  
  Index: Parser.jj
  ===================================================================
  RCS file: 
/home/cvs/jakarta-velocity/src/java/org/apache/velocity/runtime/parser/Parser.jj,v
  retrieving revision 1.45
  retrieving revision 1.46
  diff -u -r1.45 -r1.46
  --- Parser.jj 2000/12/21 05:56:02     1.45
  +++ Parser.jj 2000/12/22 12:11:28     1.46
  @@ -96,7 +96,7 @@
    *
    * @author <a href="mailto:[EMAIL PROTECTED]">Jason van Zyl</a>
    * @author <a href="mailto:[EMAIL PROTECTED]">Geir Magnusson Jr.</a>
  - * @version $Id: Parser.jj,v 1.45 2000/12/21 05:56:02 geirm Exp $ 
  + * @version $Id: Parser.jj,v 1.46 2000/12/22 12:11:28 geirm Exp $ 
   */
   public class Parser/*@bgen(jjtree)*/implements ParserTreeConstants/*@egen*/
   {/*@bgen(jjtree)*/
  @@ -111,7 +111,6 @@
       /**
        *  Name of current template we are parsing.  Passed to us in parse()
        */
  -
       String currentTemplateName = "";
   
       /** 
  @@ -182,7 +181,7 @@
       }
   
       /**
  -     *  This method gets the directives Hashtable
  +     *  This method gets a Directive from the directives Hashtable
        */
       public Directive getDirective(String directive)
       {
  @@ -256,22 +255,6 @@
   
   PARSER_END(Parser)
   
  -/**
  - * This gets inserted into the ParserMacroTokenManager
  - * and is being used here strictly for the #parse
  - * directive: an #include type behaviour. We have
  - * to save the state the stream currently being
  - * parsed and we have to save the state of the
  - * lexer (TokenManager class) then we create
  - * a new stream from the file named in the
  - * #parse directive then we ReInit the lexer. 
  - * Whatever it parses will get placed 
  - * into the AST.
  - *
  - * I need a simple way to detect circular
  - * inclusions so this thing doesn't go wild
  - * and drag down the VM.
  - */
   TOKEN_MGR_DECLS: 
   {  
       private int fileDepth = 0;
  @@ -293,11 +276,10 @@
        *  public because we need it in PD & VM handling
        *
        *  @return boolean : success.  It can fail if the state machine
  -     *     gets messed up.
  +     *     gets messed up (do don't mess it up :)
        */
       public boolean stateStackPop()
       {
  -      
           Hashtable h;
   
           try
  @@ -376,10 +358,9 @@
       private void RPARENHandler()
       {
           /*
  -         * Ultimately, we want to drop down to the state below 
  -         * the one that has an open (if we hit bottom (DEFAULT), 
  -         * that's fine. It's just text schmoo.
  -         *
  +         *  Ultimately, we want to drop down to the state below 
  +         *  the one that has an open (if we hit bottom (DEFAULT), 
  +         *  that's fine. It's just text schmoo.
            */
      
           boolean closed = false;
  @@ -424,7 +405,6 @@
               } 
           }
       }
  -
   } 
   
   /* ------------------------------------------------------------------------
  @@ -700,25 +680,26 @@
       <WHITESPACE : ([" ","\t"])+ >
   }
   
  -<REFERENCE,DIRECTIVE,REFMODIFIER,REFMOD2>
  +<DIRECTIVE,REFMOD2>
   TOKEN :
   {
      <STRING_LITERAL: ( "\"" ( ~["\"","\n","\r"] )* "\"" ) | ( "'" ( ~["'","\n","\r"] 
)* "'" ) >
       {
           /*
  -         *  - if we are in REFERENCE || REFMODIFIER then " is an ender
            *  - if we are in DIRECTIVE and haven't seen ( yet, then also drop out. 
            *      don't forget to account for the beloved yet wierd #set
            *  - finally, if we are in REFMOD2 (remember : $foo.bar( ) then " is ok!
            */
   
  -        if (curLexState == REFERENCE || curLexState == REFMODIFIER)
  -            stateStackPop();
  -        else if( curLexState == DIRECTIVE && !inSet && lparen == 0)
  +         if( curLexState == DIRECTIVE && !inSet && lparen == 0)
               stateStackPop();    
       }
  +}
   
  -|   <TRUE: "true">
  +<REFERENCE,DIRECTIVE,REFMODIFIER,REFMOD2>
  +TOKEN:
  +{
  +   <TRUE: "true">
   |   <FALSE: "false">
   }
   
  
  
  
  1.37      +82 -171   
jakarta-velocity/src/java/org/apache/velocity/runtime/parser/ParserTokenManager.java
  
  Index: ParserTokenManager.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-velocity/src/java/org/apache/velocity/runtime/parser/ParserTokenManager.java,v
  retrieving revision 1.36
  retrieving revision 1.37
  diff -u -r1.36 -r1.37
  --- ParserTokenManager.java   2000/12/21 05:56:03     1.36
  +++ ParserTokenManager.java   2000/12/22 12:11:28     1.37
  @@ -29,11 +29,10 @@
        *  public because we need it in PD & VM handling
        *
        *  @return boolean : success.  It can fail if the state machine
  -     *     gets messed up.
  +     *     gets messed up (do don't mess it up :)
        */
       public boolean stateStackPop()
       {
  -
           Hashtable h;
   
           try
  @@ -112,10 +111,9 @@
       private void RPARENHandler()
       {
           /*
  -         * Ultimately, we want to drop down to the state below 
  -         * the one that has an open (if we hit bottom (DEFAULT), 
  -         * that's fine. It's just text schmoo.
  -         *
  +         *  Ultimately, we want to drop down to the state below 
  +         *  the one that has an open (if we hit bottom (DEFAULT), 
  +         *  that's fine. It's just text schmoo.
            */
   
           boolean closed = false;
  @@ -2006,13 +2004,13 @@
      switch (pos)
      {
         case 0:
  +         if ((active0 & 0x6800L) != 0L)
  +            return 2;
            if ((active0 & 0x3000000L) != 0L)
            {
               jjmatchedKind = 54;
  -            return 11;
  +            return 5;
            }
  -         if ((active0 & 0x6800L) != 0L)
  -            return 2;
            return -1;
         case 1:
            if ((active0 & 0x2000L) != 0L)
  @@ -2021,7 +2019,7 @@
            {
               jjmatchedKind = 54;
               jjmatchedPos = 1;
  -            return 11;
  +            return 5;
            }
            return -1;
         case 2:
  @@ -2029,17 +2027,17 @@
            {
               jjmatchedKind = 54;
               jjmatchedPos = 2;
  -            return 11;
  +            return 5;
            }
            return -1;
         case 3:
            if ((active0 & 0x1000000L) != 0L)
  -            return 11;
  +            return 5;
            if ((active0 & 0x2000000L) != 0L)
            {
               jjmatchedKind = 54;
               jjmatchedPos = 3;
  -            return 11;
  +            return 5;
            }
            return -1;
         default :
  @@ -2136,7 +2134,7 @@
      {
         case 101:
            if ((active0 & 0x1000000L) != 0L)
  -            return jjStartNfaWithStates_5(3, 24, 11);
  +            return jjStartNfaWithStates_5(3, 24, 5);
            break;
         case 115:
            return jjMoveStringLiteralDfa4_5(active0, 0x2000000L);
  @@ -2158,7 +2156,7 @@
      {
         case 101:
            if ((active0 & 0x2000000L) != 0L)
  -            return jjStartNfaWithStates_5(4, 25, 11);
  +            return jjStartNfaWithStates_5(4, 25, 5);
            break;
         default :
            break;
  @@ -2169,7 +2167,7 @@
   {
      int[] nextStates;
      int startsAt = 0;
  -   jjnewStateCnt = 22;
  +   jjnewStateCnt = 16;
      int i = 1;
      jjstateSet[0] = startState;
      int j, kind = 0x7fffffff;
  @@ -2189,14 +2187,10 @@
                     {
                        if (kind > 9)
                           kind = 9;
  -                     jjCheckNAddTwoStates(19, 20);
  +                     jjCheckNAddTwoStates(13, 14);
                     }
                     else if (curChar == 46)
  -                     jjstateSet[jjnewStateCnt++] = 13;
  -                  else if (curChar == 39)
  -                     jjCheckNAddTwoStates(8, 9);
  -                  else if (curChar == 34)
  -                     jjCheckNAddTwoStates(5, 6);
  +                     jjstateSet[jjnewStateCnt++] = 7;
                     else if (curChar == 35)
                        jjstateSet[jjnewStateCnt++] = 2;
                     break;
  @@ -2212,59 +2206,35 @@
                     if (curChar == 42)
                        jjstateSet[jjnewStateCnt++] = 0;
                     break;
  -               case 4:
  -                  if (curChar == 34)
  -                     jjCheckNAddTwoStates(5, 6);
  -                  break;
                  case 5:
  -                  if ((0xfffffffbffffdbffL & l) != 0L)
  -                     jjCheckNAddTwoStates(5, 6);
  -                  break;
  -               case 6:
  -                  if (curChar == 34 && kind > 23)
  -                     kind = 23;
  -                  break;
  -               case 7:
  -                  if (curChar == 39)
  -                     jjCheckNAddTwoStates(8, 9);
  -                  break;
  -               case 8:
  -                  if ((0xffffff7fffffdbffL & l) != 0L)
  -                     jjCheckNAddTwoStates(8, 9);
  -                  break;
  -               case 9:
  -                  if (curChar == 39 && kind > 23)
  -                     kind = 23;
  -                  break;
  -               case 11:
                     if ((0x3ff200000000000L & l) == 0L)
                        break;
                     if (kind > 54)
                        kind = 54;
  -                  jjstateSet[jjnewStateCnt++] = 11;
  +                  jjstateSet[jjnewStateCnt++] = 5;
                     break;
  -               case 12:
  +               case 6:
                     if (curChar == 46)
  -                     jjstateSet[jjnewStateCnt++] = 13;
  +                     jjstateSet[jjnewStateCnt++] = 7;
                     break;
  -               case 16:
  +               case 10:
                     if (curChar == 36 && kind > 9)
                        kind = 9;
                     break;
  -               case 18:
  +               case 12:
                     if (curChar == 36)
  -                     jjCheckNAddTwoStates(19, 20);
  +                     jjCheckNAddTwoStates(13, 14);
                     break;
  -               case 20:
  +               case 14:
                     if (curChar == 33 && kind > 10)
                        kind = 10;
                     break;
  -               case 21:
  +               case 15:
                     if (curChar != 36)
                        break;
                     if (kind > 9)
                        kind = 9;
  -                  jjCheckNAddTwoStates(19, 20);
  +                  jjCheckNAddTwoStates(13, 14);
                     break;
                  default : break;
               }
  @@ -2282,48 +2252,42 @@
                     {
                        if (kind > 54)
                           kind = 54;
  -                     jjCheckNAdd(11);
  +                     jjCheckNAdd(5);
                     }
                     else if (curChar == 92)
  -                     jjCheckNAddStates(33, 36);
  +                     jjCheckNAddStates(45, 48);
                     break;
                  case 1:
                     if (kind > 12)
                        kind = 12;
                     break;
  +               case 4:
                  case 5:
  -                  jjAddStates(45, 46);
  -                  break;
  -               case 8:
  -                  jjAddStates(47, 48);
  -                  break;
  -               case 10:
  -               case 11:
                     if ((0x7fffffe87fffffeL & l) == 0L)
                        break;
                     if (kind > 54)
                        kind = 54;
  -                  jjCheckNAdd(11);
  +                  jjCheckNAdd(5);
                     break;
  -               case 13:
  +               case 7:
                     if ((0x7fffffe07fffffeL & l) != 0L && kind > 55)
                        kind = 55;
                     break;
  -               case 14:
  +               case 8:
                     if (curChar == 92)
  -                     jjCheckNAddStates(33, 36);
  +                     jjCheckNAddStates(45, 48);
                     break;
  -               case 15:
  +               case 9:
                     if (curChar == 92)
  -                     jjCheckNAddTwoStates(15, 16);
  +                     jjCheckNAddTwoStates(9, 10);
                     break;
  -               case 17:
  +               case 11:
                     if (curChar == 92)
  -                     jjCheckNAddTwoStates(17, 18);
  +                     jjCheckNAddTwoStates(11, 12);
                     break;
  -               case 19:
  +               case 13:
                     if (curChar == 92)
  -                     jjAddStates(37, 38);
  +                     jjAddStates(49, 50);
                     break;
                  default : break;
               }
  @@ -2341,14 +2305,6 @@
                     if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
                        kind = 12;
                     break;
  -               case 5:
  -                  if ((jjbitVec0[i2] & l2) != 0L)
  -                     jjAddStates(45, 46);
  -                  break;
  -               case 8:
  -                  if ((jjbitVec0[i2] & l2) != 0L)
  -                     jjAddStates(47, 48);
  -                  break;
                  default : break;
               }
            } while(i != startsAt);
  @@ -2360,7 +2316,7 @@
            kind = 0x7fffffff;
         }
         ++curPos;
  -      if ((i = jjnewStateCnt) == (startsAt = 22 - (jjnewStateCnt = startsAt)))
  +      if ((i = jjnewStateCnt) == (startsAt = 16 - (jjnewStateCnt = startsAt)))
            return curPos;
         try { curChar = input_stream.readChar(); }
         catch(java.io.IOException e) { return curPos; }
  @@ -2684,14 +2640,14 @@
                        jjCheckNAdd(13);
                     }
                     else if (curChar == 92)
  -                     jjCheckNAddStates(49, 52);
  +                     jjCheckNAddStates(51, 54);
                     break;
                  case 1:
                     if (kind > 12)
                        kind = 12;
                     break;
                  case 6:
  -                  jjAddStates(53, 54);
  +                  jjAddStates(55, 56);
                     break;
                  case 9:
                     jjAddStates(17, 18);
  @@ -2710,7 +2666,7 @@
                     break;
                  case 16:
                     if (curChar == 92)
  -                     jjCheckNAddStates(49, 52);
  +                     jjCheckNAddStates(51, 54);
                     break;
                  case 17:
                     if (curChar == 92)
  @@ -2722,7 +2678,7 @@
                     break;
                  case 21:
                     if (curChar == 92)
  -                     jjAddStates(55, 56);
  +                     jjAddStates(57, 58);
                     break;
                  default : break;
               }
  @@ -2742,7 +2698,7 @@
                     break;
                  case 6:
                     if ((jjbitVec0[i2] & l2) != 0L)
  -                     jjAddStates(53, 54);
  +                     jjAddStates(55, 56);
                     break;
                  case 9:
                     if ((jjbitVec0[i2] & l2) != 0L)
  @@ -2770,13 +2726,13 @@
      switch (pos)
      {
         case 0:
  +         if ((active0 & 0x6800L) != 0L)
  +            return 2;
            if ((active0 & 0x3000000L) != 0L)
            {
               jjmatchedKind = 54;
  -            return 11;
  +            return 5;
            }
  -         if ((active0 & 0x6800L) != 0L)
  -            return 2;
            return -1;
         case 1:
            if ((active0 & 0x2000L) != 0L)
  @@ -2785,7 +2741,7 @@
            {
               jjmatchedKind = 54;
               jjmatchedPos = 1;
  -            return 11;
  +            return 5;
            }
            return -1;
         case 2:
  @@ -2793,17 +2749,17 @@
            {
               jjmatchedKind = 54;
               jjmatchedPos = 2;
  -            return 11;
  +            return 5;
            }
            return -1;
         case 3:
            if ((active0 & 0x1000000L) != 0L)
  -            return 11;
  +            return 5;
            if ((active0 & 0x2000000L) != 0L)
            {
               jjmatchedKind = 54;
               jjmatchedPos = 3;
  -            return 11;
  +            return 5;
            }
            return -1;
         default :
  @@ -2906,7 +2862,7 @@
      {
         case 101:
            if ((active0 & 0x1000000L) != 0L)
  -            return jjStartNfaWithStates_1(3, 24, 11);
  +            return jjStartNfaWithStates_1(3, 24, 5);
            break;
         case 115:
            return jjMoveStringLiteralDfa4_1(active0, 0x2000000L);
  @@ -2928,7 +2884,7 @@
      {
         case 101:
            if ((active0 & 0x2000000L) != 0L)
  -            return jjStartNfaWithStates_1(4, 25, 11);
  +            return jjStartNfaWithStates_1(4, 25, 5);
            break;
         default :
            break;
  @@ -2939,7 +2895,7 @@
   {
      int[] nextStates;
      int startsAt = 0;
  -   jjnewStateCnt = 22;
  +   jjnewStateCnt = 16;
      int i = 1;
      jjstateSet[0] = startState;
      int j, kind = 0x7fffffff;
  @@ -2959,14 +2915,10 @@
                     {
                        if (kind > 9)
                           kind = 9;
  -                     jjCheckNAddTwoStates(19, 20);
  +                     jjCheckNAddTwoStates(13, 14);
                     }
                     else if (curChar == 46)
  -                     jjstateSet[jjnewStateCnt++] = 13;
  -                  else if (curChar == 39)
  -                     jjCheckNAddTwoStates(8, 9);
  -                  else if (curChar == 34)
  -                     jjCheckNAddTwoStates(5, 6);
  +                     jjstateSet[jjnewStateCnt++] = 7;
                     else if (curChar == 35)
                        jjstateSet[jjnewStateCnt++] = 2;
                     break;
  @@ -2982,59 +2934,35 @@
                     if (curChar == 42)
                        jjstateSet[jjnewStateCnt++] = 0;
                     break;
  -               case 4:
  -                  if (curChar == 34)
  -                     jjCheckNAddTwoStates(5, 6);
  -                  break;
                  case 5:
  -                  if ((0xfffffffbffffdbffL & l) != 0L)
  -                     jjCheckNAddTwoStates(5, 6);
  -                  break;
  -               case 6:
  -                  if (curChar == 34 && kind > 23)
  -                     kind = 23;
  -                  break;
  -               case 7:
  -                  if (curChar == 39)
  -                     jjCheckNAddTwoStates(8, 9);
  -                  break;
  -               case 8:
  -                  if ((0xffffff7fffffdbffL & l) != 0L)
  -                     jjCheckNAddTwoStates(8, 9);
  -                  break;
  -               case 9:
  -                  if (curChar == 39 && kind > 23)
  -                     kind = 23;
  -                  break;
  -               case 11:
                     if ((0x3ff200000000000L & l) == 0L)
                        break;
                     if (kind > 54)
                        kind = 54;
  -                  jjstateSet[jjnewStateCnt++] = 11;
  +                  jjstateSet[jjnewStateCnt++] = 5;
                     break;
  -               case 12:
  +               case 6:
                     if (curChar == 46)
  -                     jjstateSet[jjnewStateCnt++] = 13;
  +                     jjstateSet[jjnewStateCnt++] = 7;
                     break;
  -               case 16:
  +               case 10:
                     if (curChar == 36 && kind > 9)
                        kind = 9;
                     break;
  -               case 18:
  +               case 12:
                     if (curChar == 36)
  -                     jjCheckNAddTwoStates(19, 20);
  +                     jjCheckNAddTwoStates(13, 14);
                     break;
  -               case 20:
  +               case 14:
                     if (curChar == 33 && kind > 10)
                        kind = 10;
                     break;
  -               case 21:
  +               case 15:
                     if (curChar != 36)
                        break;
                     if (kind > 9)
                        kind = 9;
  -                  jjCheckNAddTwoStates(19, 20);
  +                  jjCheckNAddTwoStates(13, 14);
                     break;
                  default : break;
               }
  @@ -3052,48 +2980,42 @@
                     {
                        if (kind > 54)
                           kind = 54;
  -                     jjCheckNAdd(11);
  +                     jjCheckNAdd(5);
                     }
                     else if (curChar == 92)
  -                     jjCheckNAddStates(33, 36);
  +                     jjCheckNAddStates(45, 48);
                     break;
                  case 1:
                     if (kind > 12)
                        kind = 12;
                     break;
  +               case 4:
                  case 5:
  -                  jjAddStates(45, 46);
  -                  break;
  -               case 8:
  -                  jjAddStates(47, 48);
  -                  break;
  -               case 10:
  -               case 11:
                     if ((0x7fffffe87fffffeL & l) == 0L)
                        break;
                     if (kind > 54)
                        kind = 54;
  -                  jjCheckNAdd(11);
  +                  jjCheckNAdd(5);
                     break;
  -               case 13:
  +               case 7:
                     if ((0x7fffffe07fffffeL & l) != 0L && kind > 55)
                        kind = 55;
                     break;
  -               case 14:
  +               case 8:
                     if (curChar == 92)
  -                     jjCheckNAddStates(33, 36);
  +                     jjCheckNAddStates(45, 48);
                     break;
  -               case 15:
  +               case 9:
                     if (curChar == 92)
  -                     jjCheckNAddTwoStates(15, 16);
  +                     jjCheckNAddTwoStates(9, 10);
                     break;
  -               case 17:
  +               case 11:
                     if (curChar == 92)
  -                     jjCheckNAddTwoStates(17, 18);
  +                     jjCheckNAddTwoStates(11, 12);
                     break;
  -               case 19:
  +               case 13:
                     if (curChar == 92)
  -                     jjAddStates(37, 38);
  +                     jjAddStates(49, 50);
                     break;
                  default : break;
               }
  @@ -3111,14 +3033,6 @@
                     if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
                        kind = 12;
                     break;
  -               case 5:
  -                  if ((jjbitVec0[i2] & l2) != 0L)
  -                     jjAddStates(45, 46);
  -                  break;
  -               case 8:
  -                  if ((jjbitVec0[i2] & l2) != 0L)
  -                     jjAddStates(47, 48);
  -                  break;
                  default : break;
               }
            } while(i != startsAt);
  @@ -3130,7 +3044,7 @@
            kind = 0x7fffffff;
         }
         ++curPos;
  -      if ((i = jjnewStateCnt) == (startsAt = 22 - (jjnewStateCnt = startsAt)))
  +      if ((i = jjnewStateCnt) == (startsAt = 16 - (jjnewStateCnt = startsAt)))
            return curPos;
         try { curChar = input_stream.readChar(); }
         catch(java.io.IOException e) { return curPos; }
  @@ -3139,8 +3053,8 @@
   static final int[] jjnextStates = {
      1, 2, 4, 22, 23, 24, 25, 11, 12, 14, 15, 26, 27, 5, 6, 7, 
      8, 9, 10, 22, 23, 25, 16, 17, 19, 7, 8, 9, 10, 20, 27, 7, 
  -   8, 15, 16, 17, 18, 19, 20, 8, 9, 10, 11, 12, 13, 5, 6, 8, 
  -   9, 17, 18, 19, 20, 6, 7, 21, 22, 
  +   8, 15, 16, 17, 18, 19, 20, 8, 9, 10, 11, 12, 13, 9, 10, 11, 
  +   12, 13, 14, 17, 18, 19, 20, 6, 7, 21, 22, 
   };
   public static final String[] jjstrLiteralImages = {
   null, null, null, null, null, null, null, null, null, null, null, null, null, 
  @@ -3643,15 +3557,12 @@
            else
               image.append(new String(input_stream.GetSuffix(jjimageLen + 
(lengthOfMatch = jjmatchedPos + 1))));
           /*
  -         *  - if we are in REFERENCE || REFMODIFIER then " is an ender
            *  - if we are in DIRECTIVE and haven't seen ( yet, then also drop out. 
            *      don't forget to account for the beloved yet wierd #set
            *  - finally, if we are in REFMOD2 (remember : $foo.bar( ) then " is ok!
            */
   
  -        if (curLexState == REFERENCE || curLexState == REFMODIFIER)
  -            stateStackPop();
  -        else if( curLexState == DIRECTIVE && !inSet && lparen == 0)
  +         if( curLexState == DIRECTIVE && !inSet && lparen == 0)
               stateStackPop();
            break;
         case 26 :
  
  
  

Reply via email to