diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/groovydoc/lexer/_GroovyDocLexer.java b/plugins/groovy/gen/org/jetbrains/plugins/groovy/lang/groovydoc/lexer/_GroovyDocLexer.java
similarity index 85%
rename from plugins/groovy/src/org/jetbrains/plugins/groovy/lang/groovydoc/lexer/_GroovyDocLexer.java
rename to plugins/groovy/gen/org/jetbrains/plugins/groovy/lang/groovydoc/lexer/_GroovyDocLexer.java
index d19451242790..f1ba9c79aabc 100644
--- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/groovydoc/lexer/_GroovyDocLexer.java
+++ b/plugins/groovy/gen/org/jetbrains/plugins/groovy/lang/groovydoc/lexer/_GroovyDocLexer.java
@@ -1,4 +1,4 @@
-/* The following code was generated by JFlex 1.4.3 on 06.09.11 15:42 */
+/* The following code was generated by JFlex 1.4.3 on 4/26/14 2:10 PM */
/*
* Copyright 2000-2008 JetBrains s.r.o.
@@ -18,15 +18,15 @@
package org.jetbrains.plugins.groovy.lang.groovydoc.lexer;
import com.intellij.lexer.FlexLexer;
-import com.intellij.psi.TokenType;
import com.intellij.psi.tree.IElementType;
+import com.intellij.psi.TokenType;
/**
* This class is a scanner generated by
* JFlex 1.4.3
- * on 06.09.11 15:42 from the specification file
- * C:/Home/IDEA/tools/lexer/../../community/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/groovydoc/lexer/gdoc.flex
+ * on 4/26/14 2:10 PM from the specification file
+ * /Users/ignatov/src/ultimate/tools/lexer/../../community/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/groovydoc/lexer/gdoc.flex
*/
public class _GroovyDocLexer implements FlexLexer, GroovyDocTokenTypes, TokenType {
/** initial size of the lookahead buffer */
@@ -543,7 +543,7 @@ public class _GroovyDocLexer implements FlexLexer, GroovyDocTokenTypes, TokenTyp
while (true) {
if (zzCurrentPosL < zzEndReadL)
- zzInput = zzBufferArrayL != null ? zzBufferArrayL[zzCurrentPosL++]:zzBufferL.charAt(zzCurrentPosL++);
+ zzInput = (zzBufferArrayL != null ? zzBufferArrayL[zzCurrentPosL++] : zzBufferL.charAt(zzCurrentPosL++));
else if (zzAtEOF) {
zzInput = YYEOF;
break zzForAction;
@@ -563,7 +563,7 @@ public class _GroovyDocLexer implements FlexLexer, GroovyDocTokenTypes, TokenTyp
break zzForAction;
}
else {
- zzInput = zzBufferArrayL != null ? zzBufferArrayL[zzCurrentPosL++]:zzBufferL.charAt(zzCurrentPosL++);
+ zzInput = (zzBufferArrayL != null ? zzBufferArrayL[zzCurrentPosL++] : zzBufferL.charAt(zzCurrentPosL++));
}
}
int zzNext = zzTransL[ zzRowMapL[zzState] + zzCMapL[zzInput] ];
@@ -584,86 +584,102 @@ public class _GroovyDocLexer implements FlexLexer, GroovyDocTokenTypes, TokenTyp
zzMarkedPos = zzMarkedPosL;
switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) {
- case 8:
- { yybegin(DOC_TAG_VALUE); return WHITE_SPACE;
+ case 7:
+ { if (checkAhead('<') || checkAhead('\"')) {
+ yybegin(COMMENT_DATA);
+ }
+ else if (checkAhead('\u007b') ) {
+ yybegin(COMMENT_DATA); //lbrace - there's some error in JLex when typing lbrace directly
+ }
+ else {
+ yybegin(DOC_TAG_VALUE);
+ }
+ return WHITE_SPACE;
}
case 21: break;
- case 15:
- { yybegin(DOC_TAG_VALUE); return mGDOC_TAG_VALUE_RPAREN;
+ case 9:
+ { yybegin(COMMENT_DATA);
+ return WHITE_SPACE;
}
case 22: break;
- case 2:
- { yybegin(COMMENT_DATA); return mGDOC_COMMENT_DATA;
+ case 15:
+ { yybegin(DOC_TAG_VALUE);
+ return mGDOC_TAG_VALUE_RPAREN;
}
case 23: break;
+ case 19:
+ { yybegin(COMMENT_DATA_START);
+ return mGDOC_COMMENT_START;
+ }
+ case 24: break;
+ case 4:
+ { if (checkAhead('@')){
+ yybegin(INLINE_TAG_NAME);
+ }
+ else{
+ yybegin(COMMENT_DATA);
+ }
+ return mGDOC_INLINE_TAG_START;
+ }
+ case 25: break;
+ case 14:
+ { yybegin(DOC_TAG_VALUE_IN_LTGT);
+ return mGDOC_TAG_VALUE_LT;
+ }
+ case 26: break;
case 1:
{ return mGDOC_COMMENT_BAD_CHARACTER;
}
- case 24: break;
- case 6:
- { return mGDOC_COMMENT_DATA;
- }
- case 25: break;
- case 19:
- { yybegin(COMMENT_DATA_START); return mGDOC_COMMENT_START;
- }
- case 26: break;
- case 3:
- { return WHITE_SPACE;
- }
case 27: break;
- case 20:
- { yybegin(PARAM_TAG_SPACE); return mGDOC_TAG_NAME;
+ case 2:
+ { yybegin(COMMENT_DATA);
+ return mGDOC_COMMENT_DATA;
}
case 28: break;
case 18:
- { yybegin(TAG_DOC_SPACE); return mGDOC_TAG_NAME;
+ { yybegin(TAG_DOC_SPACE);
+ return mGDOC_TAG_NAME;
}
case 29: break;
- case 16:
- { yybegin(COMMENT_DATA); return mGDOC_TAG_VALUE_GT;
+ case 6:
+ { return mGDOC_COMMENT_DATA;
}
case 30: break;
- case 7:
- { if (checkAhead('<') || checkAhead('\"')) yybegin(COMMENT_DATA);
- else if (checkAhead('\u007b') ) yybegin(COMMENT_DATA); //lbrace - there's some error in JLex when typing lbrace directly
- else yybegin(DOC_TAG_VALUE);
-
- return WHITE_SPACE;
+ case 8:
+ { yybegin(DOC_TAG_VALUE);
+ return WHITE_SPACE;
}
case 31: break;
- case 11:
- { yybegin(DOC_TAG_VALUE_IN_PAREN); return mGDOC_TAG_VALUE_LPAREN;
+ case 3:
+ { return WHITE_SPACE;
}
case 32: break;
- case 5:
- { yybegin(COMMENT_DATA); return mGDOC_INLINE_TAG_END;
+ case 11:
+ { yybegin(DOC_TAG_VALUE_IN_PAREN);
+ return mGDOC_TAG_VALUE_LPAREN;
}
case 33: break;
- case 4:
- { if (checkAhead('@')){
- yybegin(INLINE_TAG_NAME);
- }
- else{
- yybegin(COMMENT_DATA);
- }
- return mGDOC_INLINE_TAG_START;
+ case 16:
+ { yybegin(COMMENT_DATA);
+ return mGDOC_TAG_VALUE_GT;
}
case 34: break;
+ case 5:
+ { yybegin(COMMENT_DATA);
+ return mGDOC_INLINE_TAG_END;
+ }
+ case 35: break;
case 17:
{ return mGDOC_COMMENT_END;
}
- case 35: break;
+ case 36: break;
case 10:
{ return mGDOC_TAG_VALUE_TOKEN;
}
- case 36: break;
- case 14:
- { yybegin(DOC_TAG_VALUE_IN_LTGT); return mGDOC_TAG_VALUE_LT;
- }
case 37: break;
- case 9:
- { yybegin(COMMENT_DATA); return WHITE_SPACE;
+ case 20:
+ { yybegin(PARAM_TAG_SPACE);
+ return mGDOC_TAG_NAME;
}
case 38: break;
case 13:
diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/lexer/_GroovyLexer.java b/plugins/groovy/gen/org/jetbrains/plugins/groovy/lang/lexer/_GroovyLexer.java
similarity index 97%
rename from plugins/groovy/src/org/jetbrains/plugins/groovy/lang/lexer/_GroovyLexer.java
rename to plugins/groovy/gen/org/jetbrains/plugins/groovy/lang/lexer/_GroovyLexer.java
index e0d9a113ad9f..0821f620ade6 100644
--- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/lexer/_GroovyLexer.java
+++ b/plugins/groovy/gen/org/jetbrains/plugins/groovy/lang/lexer/_GroovyLexer.java
@@ -1,4 +1,4 @@
-/* The following code was generated by JFlex 1.4.3 on 4/9/14 5:23 PM */
+/* The following code was generated by JFlex 1.4.3 on 4/26/14 2:10 PM */
/*
* Copyright 2000-2014 JetBrains s.r.o.
@@ -20,15 +20,14 @@ package org.jetbrains.plugins.groovy.lang.lexer;
import com.intellij.lexer.FlexLexer;
import com.intellij.psi.TokenType;
import com.intellij.psi.tree.IElementType;
-
-import java.util.Stack;
+import java.util.*;
/**
* This class is a scanner generated by
* JFlex 1.4.3
- * on 4/9/14 5:23 PM from the specification file
- * /Users/maxmedvedev/work/IDEA/tools/lexer/../../community/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/lexer/groovy.flex
+ * on 4/26/14 2:10 PM from the specification file
+ * /Users/ignatov/src/ultimate/tools/lexer/../../community/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/lexer/groovy.flex
*/
public class _GroovyLexer implements FlexLexer, GroovyTokenTypes, TokenType {
/** initial size of the lookahead buffer */
@@ -85,78 +84,61 @@ public class _GroovyLexer implements FlexLexer, GroovyTokenTypes, TokenType {
"\1\50\1\23\1\25\1\15\1\13\1\62\1\21\1\41\1\51\1\17"+
"\1\55\1\57\1\56\1\46\1\41\1\54\1\52\1\53\1\43\1\60"+
"\1\64\1\36\1\61\1\63\1\65\1\104\1\66\1\101\53\0\1\41"+
- "\12\0\1\41\4\0\1\41\5\0\27\41\1\0\37\41\1\0\u01ca\41"+
- "\4\0\14\41\16\0\5\41\7\0\1\41\1\0\1\41\201\0\5\41"+
- "\1\0\2\41\2\0\4\41\10\0\1\41\1\0\3\41\1\0\1\41"+
- "\1\0\24\41\1\0\123\41\1\0\213\41\10\0\236\41\11\0\46\41"+
- "\2\0\1\41\7\0\47\41\110\0\33\41\5\0\3\41\55\0\53\41"+
- "\43\0\2\41\1\0\143\41\1\0\1\41\17\0\2\41\7\0\2\41"+
- "\12\0\3\41\2\0\1\41\20\0\1\41\1\0\36\41\35\0\131\41"+
- "\13\0\1\41\30\0\41\41\11\0\2\41\4\0\1\41\5\0\26\41"+
- "\4\0\1\41\11\0\1\41\3\0\1\41\27\0\31\41\253\0\66\41"+
- "\3\0\1\41\22\0\1\41\7\0\12\41\17\0\7\41\1\0\7\41"+
- "\5\0\10\41\2\0\2\41\2\0\26\41\1\0\7\41\1\0\1\41"+
- "\3\0\4\41\3\0\1\41\20\0\1\41\15\0\2\41\1\0\3\41"+
- "\16\0\2\41\23\0\6\41\4\0\2\41\2\0\26\41\1\0\7\41"+
- "\1\0\2\41\1\0\2\41\1\0\2\41\37\0\4\41\1\0\1\41"+
- "\23\0\3\41\20\0\11\41\1\0\3\41\1\0\26\41\1\0\7\41"+
- "\1\0\2\41\1\0\5\41\3\0\1\41\22\0\1\41\17\0\2\41"+
- "\43\0\10\41\2\0\2\41\2\0\26\41\1\0\7\41\1\0\2\41"+
- "\1\0\5\41\3\0\1\41\36\0\2\41\1\0\3\41\17\0\1\41"+
- "\21\0\1\41\1\0\6\41\3\0\3\41\1\0\4\41\3\0\2\41"+
- "\1\0\1\41\1\0\2\41\3\0\2\41\3\0\3\41\3\0\14\41"+
- "\26\0\1\41\64\0\10\41\1\0\3\41\1\0\27\41\1\0\12\41"+
- "\1\0\5\41\3\0\1\41\32\0\2\41\6\0\2\41\43\0\10\41"+
- "\1\0\3\41\1\0\27\41\1\0\12\41\1\0\5\41\3\0\1\41"+
- "\40\0\1\41\1\0\2\41\17\0\2\41\22\0\10\41\1\0\3\41"+
- "\1\0\51\41\2\0\1\41\20\0\1\41\21\0\2\41\30\0\6\41"+
- "\5\0\22\41\3\0\30\41\1\0\11\41\1\0\1\41\2\0\7\41"+
- "\72\0\60\41\1\0\2\41\14\0\7\41\72\0\2\41\1\0\1\41"+
- "\2\0\2\41\1\0\1\41\2\0\1\41\6\0\4\41\1\0\7\41"+
- "\1\0\3\41\1\0\1\41\1\0\1\41\2\0\2\41\1\0\4\41"+
- "\1\0\2\41\11\0\1\41\2\0\5\41\1\0\1\41\25\0\2\41"+
- "\42\0\1\41\77\0\10\41\1\0\44\41\33\0\5\41\163\0\53\41"+
- "\24\0\1\41\20\0\6\41\4\0\4\41\3\0\1\41\3\0\2\41"+
- "\7\0\3\41\4\0\15\41\14\0\1\41\21\0\46\41\12\0\53\41"+
- "\1\0\1\41\3\0\u0149\41\1\0\4\41\2\0\7\41\1\0\1\41"+
- "\1\0\4\41\2\0\51\41\1\0\4\41\2\0\41\41\1\0\4\41"+
- "\2\0\7\41\1\0\1\41\1\0\4\41\2\0\17\41\1\0\71\41"+
- "\1\0\4\41\2\0\103\41\45\0\20\41\20\0\125\41\14\0\u026c\41"+
- "\2\0\21\41\1\0\32\41\5\0\113\41\25\0\15\41\1\0\4\41"+
- "\16\0\22\41\16\0\22\41\16\0\15\41\1\0\3\41\17\0\64\41"+
- "\43\0\1\41\4\0\1\41\103\0\130\41\10\0\51\41\1\0\1\41"+
- "\5\0\106\41\12\0\35\41\63\0\36\41\2\0\5\41\13\0\54\41"+
- "\25\0\7\41\70\0\27\41\11\0\65\41\122\0\1\41\135\0\57\41"+
- "\21\0\7\41\67\0\36\41\15\0\2\41\20\0\46\41\32\0\44\41"+
- "\51\0\3\41\12\0\44\41\153\0\4\41\1\0\4\41\16\0\300\41"+
- "\100\0\u0116\41\2\0\6\41\2\0\46\41\2\0\6\41\2\0\10\41"+
- "\1\0\1\41\1\0\1\41\1\0\1\41\1\0\37\41\2\0\65\41"+
- "\1\0\7\41\1\0\1\41\3\0\3\41\1\0\7\41\3\0\4\41"+
- "\2\0\6\41\4\0\15\41\5\0\3\41\1\0\7\41\164\0\1\41"+
- "\15\0\1\41\20\0\15\41\145\0\1\41\4\0\1\41\2\0\12\41"+
- "\1\0\1\41\3\0\5\41\6\0\1\41\1\0\1\41\1\0\1\41"+
- "\1\0\4\41\1\0\13\41\2\0\4\41\5\0\5\41\4\0\1\41"+
- "\64\0\2\41\u0a7b\0\57\41\1\0\57\41\1\0\205\41\6\0\4\41"+
- "\21\0\46\41\12\0\66\41\11\0\1\41\20\0\27\41\11\0\7\41"+
- "\1\0\7\41\1\0\7\41\1\0\7\41\1\0\7\41\1\0\7\41"+
- "\1\0\7\41\1\0\7\41\120\0\1\41\u01d5\0\2\41\52\0\5\41"+
+ "\12\0\1\41\4\0\1\41\5\0\27\41\1\0\37\41\1\0\u013f\41"+
+ "\31\0\162\41\4\0\14\41\16\0\5\41\11\0\1\41\213\0\1\41"+
+ "\13\0\1\41\1\0\3\41\1\0\1\41\1\0\24\41\1\0\54\41"+
+ "\1\0\46\41\1\0\5\41\4\0\202\41\10\0\105\41\1\0\46\41"+
+ "\2\0\2\41\6\0\20\41\41\0\46\41\2\0\1\41\7\0\47\41"+
+ "\110\0\33\41\5\0\3\41\56\0\32\41\5\0\13\41\43\0\2\41"+
+ "\1\0\143\41\1\0\1\41\17\0\2\41\7\0\2\41\12\0\3\41"+
+ "\2\0\1\41\20\0\1\41\1\0\36\41\35\0\3\41\60\0\46\41"+
+ "\13\0\1\41\u0152\0\66\41\3\0\1\41\22\0\1\41\7\0\12\41"+
+ "\43\0\10\41\2\0\2\41\2\0\26\41\1\0\7\41\1\0\1\41"+
+ "\3\0\4\41\3\0\1\41\36\0\2\41\1\0\3\41\16\0\2\41"+
+ "\23\0\6\41\4\0\2\41\2\0\26\41\1\0\7\41\1\0\2\41"+
+ "\1\0\2\41\1\0\2\41\37\0\4\41\1\0\1\41\23\0\3\41"+
+ "\20\0\11\41\1\0\3\41\1\0\26\41\1\0\7\41\1\0\2\41"+
+ "\1\0\5\41\3\0\1\41\22\0\1\41\17\0\2\41\43\0\10\41"+
+ "\2\0\2\41\2\0\26\41\1\0\7\41\1\0\2\41\1\0\5\41"+
+ "\3\0\1\41\36\0\2\41\1\0\3\41\17\0\1\41\21\0\1\41"+
+ "\1\0\6\41\3\0\3\41\1\0\4\41\3\0\2\41\1\0\1\41"+
+ "\1\0\2\41\3\0\2\41\3\0\3\41\3\0\10\41\1\0\3\41"+
+ "\113\0\10\41\1\0\3\41\1\0\27\41\1\0\12\41\1\0\5\41"+
+ "\46\0\2\41\43\0\10\41\1\0\3\41\1\0\27\41\1\0\12\41"+
+ "\1\0\5\41\3\0\1\41\40\0\1\41\1\0\2\41\43\0\10\41"+
+ "\1\0\3\41\1\0\27\41\1\0\20\41\46\0\2\41\43\0\22\41"+
+ "\3\0\30\41\1\0\11\41\1\0\1\41\2\0\7\41\72\0\60\41"+
+ "\1\0\2\41\14\0\7\41\72\0\2\41\1\0\1\41\2\0\2\41"+
+ "\1\0\1\41\2\0\1\41\6\0\4\41\1\0\7\41\1\0\3\41"+
+ "\1\0\1\41\1\0\1\41\2\0\2\41\1\0\4\41\1\0\2\41"+
+ "\11\0\1\41\2\0\5\41\1\0\1\41\25\0\2\41\42\0\1\41"+
+ "\77\0\10\41\1\0\42\41\35\0\4\41\164\0\42\41\1\0\5\41"+
+ "\1\0\2\41\45\0\6\41\112\0\46\41\12\0\51\41\7\0\132\41"+
+ "\5\0\104\41\5\0\122\41\6\0\7\41\1\0\77\41\1\0\1\41"+
+ "\1\0\4\41\2\0\7\41\1\0\1\41\1\0\4\41\2\0\47\41"+
+ "\1\0\1\41\1\0\4\41\2\0\37\41\1\0\1\41\1\0\4\41"+
+ "\2\0\7\41\1\0\1\41\1\0\4\41\2\0\7\41\1\0\7\41"+
+ "\1\0\27\41\1\0\37\41\1\0\1\41\1\0\4\41\2\0\7\41"+
+ "\1\0\47\41\1\0\23\41\105\0\125\41\14\0\u026c\41\2\0\10\41"+
+ "\12\0\32\41\5\0\113\41\25\0\15\41\1\0\4\41\16\0\22\41"+
+ "\16\0\22\41\16\0\15\41\1\0\3\41\17\0\64\41\43\0\1\41"+
+ "\4\0\1\41\103\0\130\41\10\0\51\41\127\0\35\41\63\0\36\41"+
+ "\2\0\5\41\u038b\0\154\41\224\0\234\41\4\0\132\41\6\0\26\41"+
+ "\2\0\6\41\2\0\46\41\2\0\6\41\2\0\10\41\1\0\1\41"+
+ "\1\0\1\41\1\0\1\41\1\0\37\41\2\0\65\41\1\0\7\41"+
+ "\1\0\1\41\3\0\3\41\1\0\7\41\3\0\4\41\2\0\6\41"+
+ "\4\0\15\41\5\0\3\41\1\0\7\41\164\0\1\41\15\0\1\41"+
+ "\202\0\1\41\4\0\1\41\2\0\12\41\1\0\1\41\3\0\5\41"+
+ "\6\0\1\41\1\0\1\41\1\0\1\41\1\0\4\41\1\0\3\41"+
+ "\1\0\7\41\3\0\3\41\5\0\5\41\u0ebb\0\2\41\52\0\5\41"+
"\5\0\2\41\4\0\126\41\6\0\3\41\1\0\132\41\1\0\4\41"+
- "\5\0\51\41\3\0\136\41\21\0\33\41\65\0\20\41\u0200\0\u19b6\41"+
- "\112\0\u51cc\41\64\0\u048d\41\103\0\56\41\2\0\u010d\41\3\0\20\41"+
- "\12\0\2\41\24\0\57\41\20\0\31\41\10\0\106\41\61\0\11\41"+
- "\2\0\147\41\2\0\4\41\1\0\2\41\16\0\12\41\120\0\10\41"+
- "\1\0\3\41\1\0\4\41\1\0\27\41\35\0\64\41\16\0\62\41"+
- "\76\0\6\41\3\0\1\41\16\0\34\41\12\0\27\41\31\0\35\41"+
- "\7\0\57\41\34\0\1\41\60\0\51\41\27\0\3\41\1\0\10\41"+
- "\24\0\27\41\3\0\1\41\5\0\60\41\1\0\1\41\3\0\2\41"+
- "\2\0\5\41\2\0\1\41\1\0\1\41\30\0\3\41\43\0\6\41"+
- "\2\0\6\41\2\0\6\41\11\0\7\41\1\0\7\41\221\0\43\41"+
- "\35\0\u2ba4\41\14\0\27\41\4\0\61\41\u2104\0\u012e\41\2\0\76\41"+
- "\2\0\152\41\46\0\7\41\14\0\5\41\5\0\1\41\1\0\12\41"+
- "\1\0\15\41\1\0\5\41\1\0\1\41\1\0\2\41\1\0\2\41"+
- "\1\0\154\41\41\0\u016b\41\22\0\100\41\2\0\66\41\50\0\14\41"+
- "\164\0\5\41\1\0\207\41\44\0\32\41\6\0\32\41\13\0\131\41"+
- "\3\0\6\41\2\0\6\41\2\0\6\41\2\0\3\41\43\0";
+ "\5\0\50\41\4\0\136\41\21\0\30\41\70\0\20\41\u0200\0\u19b6\41"+
+ "\112\0\u51a6\41\132\0\u048d\41\u0773\0\u2ba4\41\u215c\0\u012e\41\2\0\73\41"+
+ "\225\0\7\41\14\0\5\41\5\0\1\41\1\0\12\41\1\0\15\41"+
+ "\1\0\5\41\1\0\1\41\1\0\2\41\1\0\2\41\1\0\154\41"+
+ "\41\0\u016b\41\22\0\100\41\2\0\66\41\50\0\14\41\164\0\5\41"+
+ "\1\0\207\41\44\0\32\41\6\0\32\41\13\0\131\41\3\0\6\41"+
+ "\2\0\6\41\2\0\6\41\2\0\3\41\43\0";
/**
* Translates characters to character classes
@@ -2216,7 +2198,7 @@ public class _GroovyLexer implements FlexLexer, GroovyTokenTypes, TokenType {
char [] map = new char[0x10000];
int i = 0; /* index in packed string */
int j = 0; /* index in unpacked array */
- while (i < 1618) {
+ while (i < 1274) {
int count = packed.charAt(i++);
char value = packed.charAt(i++);
do map[j++] = value; while (--count > 0);
@@ -2444,201 +2426,93 @@ public class _GroovyLexer implements FlexLexer, GroovyTokenTypes, TokenType {
zzMarkedPos = zzMarkedPosL;
switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) {
- case 59:
- { yybegin(IN_DOLLAR_SLASH_REGEX_DOT);
- return mIDENT;
+ case 71:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mSPREAD_DOT);
}
case 175: break;
- case 5:
+ case 27:
{ yybegin(WAIT_FOR_REGEX);
- return(mSTAR);
+ return(mMOD);
}
case 176: break;
- case 74:
- { yybegin(WAIT_FOR_REGEX);
- return(mNOT_EQUAL);
+ case 46:
+ { yybegin(NLS_AFTER_NLS);
+ afterComment = IN_TRIPLE_IDENT;
+ return mNLS;
}
case 177: break;
- case 47:
- { blockStack.push(mLCURLY);
- braceCount.push(mLCURLY);
- yybegin(NLS_AFTER_LBRACE);
- return(mLCURLY);
+ case 113:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mSTAR_STAR_ASSIGN);
}
case 178: break;
case 134:
{ return( kTRUE );
}
case 179: break;
+ case 123:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mREGEX_MATCH);
+ }
+ case 180: break;
+ case 70:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mSTAR_STAR);
+ }
+ case 181: break;
case 136:
{ return( kNULL );
}
- case 180: break;
- case 23:
- { yybegin(WAIT_FOR_REGEX);
- return(mCOMMA);
- }
- case 181: break;
+ case 182: break;
case 130:
{ return( kENUM );
}
- case 182: break;
- case 62:
- { yybegin(IN_DOLLAR_SLASH_REGEX_DOLLAR);
- return mDOLLAR;
- }
case 183: break;
- case 84:
- { yybegin(WAIT_FOR_REGEX);
- return(mDEC);
+ case 54:
+ { blockStack.push(mDIV);
+ braceCount.push(mLCURLY);
+ yybegin(NLS_AFTER_LBRACE);
+ return mLCURLY;
}
case 184: break;
- case 81:
- { return( kDO );
- }
- case 185: break;
- case 87:
- { yybegin(WAIT_FOR_REGEX);
- return(mRANGE_INCLUSIVE);
- }
- case 186: break;
- case 73:
- { return mSH_COMMENT;
- }
- case 187: break;
- case 126:
- { yybegin(WAIT_FOR_REGEX);
- return(mSR_ASSIGN);
- }
- case 188: break;
- case 53:
- { yybegin(IN_REGEX_DOT);
- return mIDENT;
- }
- case 189: break;
- case 106:
- { yybegin(IN_DOLLAR_SLASH_REGEX);
- gStringStack.push(mDOLLAR);
- return mDOLLAR_SLASH_REGEX_BEGIN;
- }
- case 190: break;
- case 49:
- { yypushback(1);
+ case 56:
+ { if (!gStringStack.isEmpty()) {
+ gStringStack.pop();
+ }
if (blockStack.isEmpty()){
yybegin(YYINITIAL);
} else {
yybegin(IN_INNER_BLOCK);
}
+ return mREGEX_END;
}
- case 191: break;
- case 7:
- { return mIDENT;
+ case 185: break;
+ case 63:
+ { yypushback(1);
+ yybegin(IN_DOLLAR_SLASH_REGEX);
}
- case 192: break;
- case 25:
- { yybegin(WAIT_FOR_REGEX);
- return(mGT);
+ case 186: break;
+ case 81:
+ { return( kDO );
}
- case 193: break;
- case 145:
- { return( kSUPER );
+ case 187: break;
+ case 58:
+ { yypushback(1);
+ yybegin(IN_DOLLAR_SLASH_REGEX);
}
- case 194: break;
- case 120:
- { yybegin(IN_TRIPLE_GSTRING);
- gStringStack.push(mLBRACK);
- return mGSTRING_BEGIN;
+ case 188: break;
+ case 66:
+ { yypushback(1);
+ yybegin(NLS_AFTER_COMMENT);
}
- case 195: break;
- case 69:
- { yybegin(WAIT_FOR_REGEX);
- return(mDIV_ASSIGN);
+ case 189: break;
+ case 73:
+ { return mSH_COMMENT;
}
- case 196: break;
- case 173:
- { return( kINSTANCEOF );
- }
- case 197: break;
- case 94:
- { yybegin(WAIT_FOR_REGEX);
- return(mEQUAL);
- }
- case 198: break;
- case 18:
- { yybegin(WAIT_FOR_REGEX);
- braceCount.push(mLPAREN);
- return(mLPAREN);
- }
- case 199: break;
- case 22:
- { yybegin(WAIT_FOR_REGEX);
- return(mCOLON);
- }
- case 200: break;
- case 154:
- { return( kSTATIC );
- }
- case 201: break;
- case 144:
- { return( kCATCH );
- }
- case 202: break;
- case 29:
- { yybegin(WAIT_FOR_REGEX);
- return(mBOR);
- }
- case 203: break;
- case 55:
- { return mREGEX_CONTENT;
- }
- case 204: break;
- case 107:
- // lookahead expression with fixed lookahead length
- yypushback(1);
- { return mREGEX_CONTENT;
- }
- case 205: break;
- case 27:
- { yybegin(WAIT_FOR_REGEX);
- return(mMOD);
- }
- case 206: break;
- case 24:
- { yybegin(WAIT_FOR_REGEX);
- return(mLT);
- }
- case 207: break;
- case 170:
- { return( kPROTECTED );
- }
- case 208: break;
- case 114:
- { return mNUM_BIG_DECIMAL;
- }
- case 209: break;
- case 71:
- { yybegin(WAIT_FOR_REGEX);
- return(mSPREAD_DOT);
- }
- case 210: break;
- case 151:
- { return( kDOUBLE );
- }
- case 211: break;
- case 37:
- { yybegin(IN_TRIPLE_DOT);
- return mIDENT;
- }
- case 212: break;
- case 35:
- { blockStack.push(mLPAREN);
- braceCount.push(mLCURLY);
- yybegin(NLS_AFTER_LBRACE);
- return mLCURLY;
- }
- case 213: break;
- case 127:
- { if (!gStringStack.isEmpty()){
+ case 190: break;
+ case 42:
+ { if (!gStringStack.isEmpty()) {
gStringStack.pop();
}
if (blockStack.isEmpty()){
@@ -2648,54 +2522,407 @@ public class _GroovyLexer implements FlexLexer, GroovyTokenTypes, TokenType {
}
return mGSTRING_END;
}
+ case 191: break;
+ case 7:
+ { return mIDENT;
+ }
+ case 192: break;
+ case 89:
+ { if (zzStartRead == 0 ||
+ zzBuffer.subSequence(0, zzStartRead).toString().trim().length() == 0) {
+ yypushback(2);
+ yybegin(WAIT_FOR_REGEX);
+ } else {
+ yypushback(1);
+ return(mDOLLAR);
+ }
+ }
+ case 193: break;
+ case 145:
+ { return( kSUPER );
+ }
+ case 194: break;
+ case 95:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mREGEX_FIND);
+ }
+ case 195: break;
+ case 100:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mBOR_ASSIGN);
+ }
+ case 196: break;
+ case 173:
+ { return( kINSTANCEOF );
+ }
+ case 197: break;
+ case 35:
+ { blockStack.push(mLPAREN);
+ braceCount.push(mLCURLY);
+ yybegin(NLS_AFTER_LBRACE);
+ return mLCURLY;
+ }
+ case 198: break;
+ case 109:
+ { if (!gStringStack.isEmpty()) {
+ gStringStack.pop();
+ }
+ if (blockStack.isEmpty()){
+ yybegin(YYINITIAL);
+ } else {
+ yybegin(IN_INNER_BLOCK);
+ }
+ return mDOLLAR_SLASH_REGEX_END;
+ }
+ case 199: break;
+ case 74:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mNOT_EQUAL);
+ }
+ case 200: break;
+ case 104:
+ // lookahead expression with fixed base length
+ zzMarkedPos = zzStartRead + 1;
+ { yybegin(IN_SINGLE_IDENT);
+ return mDOT;
+ }
+ case 201: break;
+ case 154:
+ { return( kSTATIC );
+ }
+ case 202: break;
+ case 101:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mLOR);
+ }
+ case 203: break;
+ case 144:
+ { return( kCATCH );
+ }
+ case 204: break;
+ case 52:
+ { yypushback(1);
+ yybegin(IN_REGEX);
+ }
+ case 205: break;
+ case 55:
+ { return mREGEX_CONTENT;
+ }
+ case 206: break;
+ case 107:
+ // lookahead expression with fixed lookahead length
+ yypushback(1);
+ { return mREGEX_CONTENT;
+ }
+ case 207: break;
+ case 4:
+ { if (zzStartRead == 0 ||
+ zzBuffer.subSequence(0, zzStartRead).toString().trim().length() == 0) {
+ yypushback(1);
+ yybegin(WAIT_FOR_REGEX);
+ } else {
+ return(mDIV);
+ }
+ }
+ case 208: break;
+ case 98:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mMOD_ASSIGN);
+ }
+ case 209: break;
+ case 170:
+ { return( kPROTECTED );
+ }
+ case 210: break;
+ case 87:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mRANGE_INCLUSIVE);
+ }
+ case 211: break;
+ case 114:
+ { return mNUM_BIG_DECIMAL;
+ }
+ case 212: break;
+ case 59:
+ { yybegin(IN_DOLLAR_SLASH_REGEX_DOT);
+ return mIDENT;
+ }
+ case 213: break;
+ case 25:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mGT);
+ }
case 214: break;
+ case 33:
+ { yypushback(1);
+ yybegin(IN_SINGLE_GSTRING);
+ }
+ case 215: break;
+ case 126:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mSR_ASSIGN);
+ }
+ case 216: break;
+ case 151:
+ { return( kDOUBLE );
+ }
+ case 217: break;
+ case 120:
+ { yybegin(IN_TRIPLE_GSTRING);
+ gStringStack.push(mLBRACK);
+ return mGSTRING_BEGIN;
+ }
+ case 218: break;
case 122:
{ return( kNEW );
}
- case 215: break;
+ case 219: break;
+ case 36:
+ { yypushback(1);
+ yybegin(IN_TRIPLE_GSTRING);
+ }
+ case 220: break;
+ case 17:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mASSIGN);
+ }
+ case 221: break;
+ case 50:
+ { afterComment = YYINITIAL;
+ return(WHITE_SPACE);
+ }
+ case 222: break;
case 158:
{ return( kNATIVE );
}
- case 216: break;
- case 88:
- { yybegin(WAIT_FOR_REGEX);
- return(mMEMBER_POINTER);
- }
- case 217: break;
- case 19:
- { if (!braceCount.isEmpty() && mLPAREN == braceCount.peek()) {
- braceCount.pop();
- }
- return(mRPAREN);
- }
- case 218: break;
- case 65:
- { yypushback(1);
- yybegin(WAIT_FOR_REGEX);
- }
- case 219: break;
+ case 223: break;
case 115:
{ return( kFOR );
}
- case 220: break;
+ case 224: break;
+ case 99:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mBXOR_ASSIGN);
+ }
+ case 225: break;
case 133:
{ return( kCHAR );
}
- case 221: break;
- case 150:
- { return( kIMPORT );
- }
- case 222: break;
+ case 226: break;
case 92:
{ yybegin(WAIT_FOR_REGEX);
return(mOPTIONAL_DOT);
}
- case 223: break;
- case 102:
+ case 227: break;
+ case 24:
{ yybegin(WAIT_FOR_REGEX);
- return(mBAND_ASSIGN);
+ return(mLT);
}
- case 224: break;
+ case 228: break;
+ case 150:
+ { return( kIMPORT );
+ }
+ case 229: break;
+ case 161:
+ { return( kEXTENDS );
+ }
+ case 230: break;
+ case 2:
+ { yybegin(NLS_AFTER_NLS);
+ afterComment = WAIT_FOR_REGEX;
+ return !braceCount.isEmpty() &&
+ mLPAREN == braceCount.peek() ? WHITE_SPACE : mNLS;
+ }
+ case 231: break;
+ case 61:
+ { return mDOLLAR_SLASH_REGEX_CONTENT;
+ }
+ case 232: break;
+ case 110:
+ // lookahead expression with fixed lookahead length
+ yypushback(1);
+ { return mDOLLAR_SLASH_REGEX_CONTENT;
+ }
+ case 233: break;
+ case 64:
+ { yypushback(1);
+ yybegin(afterComment);
+ }
+ case 234: break;
+ case 159:
+ { return( kFINALLY );
+ }
+ case 235: break;
+ case 83:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mPLUS_ASSIGN);
+ }
+ case 236: break;
+ case 137:
+ { return( kVOID );
+ }
+ case 237: break;
+ case 152:
+ { return( kPUBLIC );
+ }
+ case 238: break;
+ case 129:
+ { return( kELSE );
+ }
+ case 239: break;
+ case 12:
+ { return mSTRING_LITERAL;
+ }
+ case 240: break;
+ case 6:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mLNOT);
+ }
+ case 241: break;
+ case 10:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mMINUS);
+ }
+ case 242: break;
+ case 65:
+ { yypushback(1);
+ yybegin(WAIT_FOR_REGEX);
+ }
+ case 243: break;
+ case 60:
+ { blockStack.push(mDOLLAR);
+ braceCount.push(mLCURLY);
+ yybegin(NLS_AFTER_LBRACE);
+ return mLCURLY;
+ }
+ case 244: break;
+ case 30:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mBAND);
+ }
+ case 245: break;
+ case 172:
+ { return( kIMPLEMENTS );
+ }
+ case 246: break;
+ case 5:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mSTAR);
+ }
+ case 247: break;
+ case 11:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mDOT);
+ }
+ case 248: break;
+ case 8:
+ { return mNUM_INT;
+ }
+ case 249: break;
+ case 169:
+ { return( kINTERFACE );
+ }
+ case 250: break;
+ case 82:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mINC);
+ }
+ case 251: break;
+ case 163:
+ { return( kPACKAGE );
+ }
+ case 252: break;
+ case 148:
+ { return( kTHROW );
+ }
+ case 253: break;
+ case 93:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mELVIS);
+ }
+ case 254: break;
+ case 80:
+ { return( kIN );
+ }
+ case 255: break;
+ case 85:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mMINUS_ASSIGN);
+ }
+ case 256: break;
+ case 67:
+ { return mSL_COMMENT;
+ }
+ case 257: break;
+ case 37:
+ { yybegin(IN_TRIPLE_DOT);
+ return mIDENT;
+ }
+ case 258: break;
+ case 20:
+ { yybegin(WAIT_FOR_REGEX);
+ braceCount.push(mLPAREN);
+ return(mLBRACK);
+ }
+ case 259: break;
+ case 131:
+ { return( kBYTE );
+ }
+ case 260: break;
+ case 138:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mBSR_ASSIGN);
+ }
+ case 261: break;
+ case 53:
+ { yybegin(IN_REGEX_DOT);
+ return mIDENT;
+ }
+ case 262: break;
+ case 44:
+ { yybegin(IN_TRIPLE_GSTRING_DOLLAR);
+ return mDOLLAR;
+ }
+ case 263: break;
+ case 49:
+ { yypushback(1);
+ if (blockStack.isEmpty()){
+ yybegin(YYINITIAL);
+ } else {
+ yybegin(IN_INNER_BLOCK);
+ }
+ }
+ case 264: break;
+ case 174:
+ { return( kSYNCHRONIZED );
+ }
+ case 265: break;
+ case 118:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mTRIPLE_DOT);
+ }
+ case 266: break;
+ case 86:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mCLOSABLE_BLOCK_OP);
+ }
+ case 267: break;
+ case 88:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mMEMBER_POINTER);
+ }
+ case 268: break;
+ case 121:
+ { return( kTRY );
+ }
+ case 269: break;
+ case 21:
+ { if (!braceCount.isEmpty() && mLPAREN == braceCount.peek()) {
+ braceCount.pop();
+ }
+ return(mRBRACK);
+ }
+ case 270: break;
case 48:
{ if (!blockStack.isEmpty()) {
IElementType br = blockStack.pop();
@@ -2712,122 +2939,21 @@ public class _GroovyLexer implements FlexLexer, GroovyTokenTypes, TokenType {
}
return mRCURLY;
}
- case 225: break;
- case 161:
- { return( kEXTENDS );
+ case 271: break;
+ case 132:
+ { return( kCASE );
}
- case 226: break;
- case 9:
- { yybegin(WAIT_FOR_REGEX);
- return(mPLUS);
+ case 272: break;
+ case 78:
+ { return mNUM_DOUBLE;
}
- case 227: break;
- case 109:
- { if (!gStringStack.isEmpty()) {
- gStringStack.pop();
- }
- if (blockStack.isEmpty()){
- yybegin(YYINITIAL);
- } else {
- yybegin(IN_INNER_BLOCK);
- }
- return mDOLLAR_SLASH_REGEX_END;
+ case 273: break;
+ case 160:
+ { return( kDEFAULT );
}
- case 228: break;
- case 95:
- { yybegin(WAIT_FOR_REGEX);
- return(mREGEX_FIND);
- }
- case 229: break;
- case 26:
- { yybegin(WAIT_FOR_REGEX);
- return(mBNOT);
- }
- case 230: break;
- case 61:
- { return mDOLLAR_SLASH_REGEX_CONTENT;
- }
- case 231: break;
- case 110:
- // lookahead expression with fixed lookahead length
- yypushback(1);
- { return mDOLLAR_SLASH_REGEX_CONTENT;
- }
- case 232: break;
- case 100:
- { yybegin(WAIT_FOR_REGEX);
- return(mBOR_ASSIGN);
- }
- case 233: break;
- case 159:
- { return( kFINALLY );
- }
- case 234: break;
- case 101:
- { yybegin(WAIT_FOR_REGEX);
- return(mLOR);
- }
- case 235: break;
- case 72:
- { yybegin(WAIT_FOR_REGEX);
- return(mSTAR_ASSIGN);
- }
- case 236: break;
- case 137:
- { return( kVOID );
- }
- case 237: break;
- case 152:
- { return( kPUBLIC );
- }
- case 238: break;
- case 129:
- { return( kELSE );
- }
- case 239: break;
- case 58:
- { yypushback(1);
- yybegin(IN_DOLLAR_SLASH_REGEX);
- }
- case 240: break;
- case 38:
- { blockStack.push(mLBRACK);
- braceCount.push(mLCURLY);
- yybegin(NLS_AFTER_LBRACE);
- return mLCURLY;
- }
- case 241: break;
- case 12:
- { return mSTRING_LITERAL;
- }
- case 242: break;
- case 89:
- { if (zzStartRead == 0 ||
- zzBuffer.subSequence(0, zzStartRead).toString().trim().length() == 0) {
- yypushback(2);
- yybegin(WAIT_FOR_REGEX);
- } else {
- yypushback(1);
- return(mDOLLAR);
- }
- }
- case 243: break;
- case 85:
- { yybegin(WAIT_FOR_REGEX);
- return(mMINUS_ASSIGN);
- }
- case 244: break;
- case 86:
- { yybegin(WAIT_FOR_REGEX);
- return(mCLOSABLE_BLOCK_OP);
- }
- case 245: break;
- case 172:
- { return( kIMPLEMENTS );
- }
- case 246: break;
- case 42:
- { if (!gStringStack.isEmpty()) {
+ case 274: break;
+ case 127:
+ { if (!gStringStack.isEmpty()){
gStringStack.pop();
}
if (blockStack.isEmpty()){
@@ -2837,456 +2963,311 @@ public class _GroovyLexer implements FlexLexer, GroovyTokenTypes, TokenType {
}
return mGSTRING_END;
}
- case 247: break;
- case 98:
- { yybegin(WAIT_FOR_REGEX);
- return(mMOD_ASSIGN);
+ case 275: break;
+ case 171:
+ { return( kTRANSIENT );
}
- case 248: break;
+ case 276: break;
+ case 112:
+ { return GROOVY_DOC_COMMENT;
+ }
+ case 277: break;
case 16:
{ yybegin(WAIT_FOR_REGEX);
return(mQUESTION);
}
- case 249: break;
- case 8:
- { return mNUM_INT;
- }
- case 250: break;
- case 169:
- { return( kINTERFACE );
- }
- case 251: break;
- case 31:
- { yybegin(WAIT_FOR_REGEX);
- return(mSEMI);
- }
- case 252: break;
- case 163:
- { return( kPACKAGE );
- }
- case 253: break;
- case 148:
- { return( kTHROW );
- }
- case 254: break;
- case 17:
- { yybegin(WAIT_FOR_REGEX);
- return(mASSIGN);
- }
- case 255: break;
- case 80:
- { return( kIN );
- }
- case 256: break;
- case 67:
- { return mSL_COMMENT;
- }
- case 257: break;
- case 13:
- { yybegin(IN_SINGLE_GSTRING);
- gStringStack.push(mLPAREN);
- return mGSTRING_BEGIN;
- }
- case 258: break;
- case 131:
- { return( kBYTE );
- }
- case 259: break;
- case 103:
- { yybegin(WAIT_FOR_REGEX);
- return(mLAND);
- }
- case 260: break;
- case 33:
- { yypushback(1);
- yybegin(IN_SINGLE_GSTRING);
- }
- case 261: break;
- case 28:
- { yybegin(WAIT_FOR_REGEX);
- return(mBXOR);
- }
- case 262: break;
- case 52:
- { yypushback(1);
- yybegin(IN_REGEX);
- }
- case 263: break;
- case 64:
- { yypushback(1);
- yybegin(afterComment);
- }
- case 264: break;
- case 174:
- { return( kSYNCHRONIZED );
- }
- case 265: break;
- case 125:
- { yybegin(WAIT_FOR_REGEX);
- return(mSL_ASSIGN);
- }
- case 266: break;
- case 57:
- { yybegin(IN_REGEX_DOLLAR);
- return mDOLLAR;
- }
- case 267: break;
- case 36:
- { yypushback(1);
- yybegin(IN_TRIPLE_GSTRING);
- }
- case 268: break;
- case 121:
- { return( kTRY );
- }
- case 269: break;
- case 10:
- { yybegin(WAIT_FOR_REGEX);
- return(mMINUS);
- }
- case 270: break;
- case 11:
- { yybegin(WAIT_FOR_REGEX);
- return(mDOT);
- }
- case 271: break;
- case 132:
- { return( kCASE );
- }
- case 272: break;
- case 104:
- // lookahead expression with fixed base length
- zzMarkedPos = zzStartRead + 1;
- { yybegin(IN_SINGLE_IDENT);
- return mDOT;
- }
- case 273: break;
- case 78:
- { return mNUM_DOUBLE;
- }
- case 274: break;
- case 160:
- { return( kDEFAULT );
- }
- case 275: break;
- case 123:
- { yybegin(WAIT_FOR_REGEX);
- return(mREGEX_MATCH);
- }
- case 276: break;
- case 50:
- { afterComment = YYINITIAL;
- return(WHITE_SPACE);
- }
- case 277: break;
- case 171:
- { return( kTRANSIENT );
- }
case 278: break;
- case 82:
- { yybegin(WAIT_FOR_REGEX);
- return(mINC);
- }
- case 279: break;
- case 112:
- { return GROOVY_DOC_COMMENT;
- }
- case 280: break;
- case 2:
- { yybegin(NLS_AFTER_NLS);
- afterComment = WAIT_FOR_REGEX;
- return !braceCount.isEmpty() &&
- mLPAREN == braceCount.peek() ? WHITE_SPACE : mNLS;
- }
- case 281: break;
- case 60:
- { blockStack.push(mDOLLAR);
- braceCount.push(mLCURLY);
- yybegin(NLS_AFTER_LBRACE);
- return mLCURLY;
- }
- case 282: break;
case 155:
{ return( kSWITCH );
}
- case 283: break;
- case 15:
- { while (!braceCount.isEmpty() && mLCURLY != braceCount.peek()) {
- braceCount.pop();
- }
- if (!braceCount.isEmpty() && mLCURLY == braceCount.peek()) {
- braceCount.pop();
- }
- return mRCURLY;
- }
- case 284: break;
- case 4:
- { if (zzStartRead == 0 ||
- zzBuffer.subSequence(0, zzStartRead).toString().trim().length() == 0) {
- yypushback(1);
- yybegin(WAIT_FOR_REGEX);
- } else {
- return(mDIV);
- }
- }
- case 285: break;
- case 90:
- { return mGSTRING_LITERAL;
- }
- case 286: break;
- case 20:
- { yybegin(WAIT_FOR_REGEX);
- braceCount.push(mLPAREN);
- return(mLBRACK);
- }
- case 287: break;
- case 45:
- { yypushback(1);
- yybegin(IN_TRIPLE_IDENT);
- }
- case 288: break;
- case 139:
- { return( kFLOAT );
- }
- case 289: break;
- case 138:
- { yybegin(WAIT_FOR_REGEX);
- return(mBSR_ASSIGN);
- }
- case 290: break;
- case 79:
- { return( kIF );
- }
- case 291: break;
- case 93:
- { yybegin(WAIT_FOR_REGEX);
- return(mELVIS);
- }
- case 292: break;
- case 140:
- { return( kFINAL );
- }
- case 293: break;
- case 34:
- { yybegin(IN_SINGLE_DOT);
- return mIDENT;
- }
- case 294: break;
- case 97:
- { yybegin(WAIT_FOR_REGEX);
- return(mGE);
- }
- case 295: break;
- case 156:
- { return( kTHROWS );
- }
- case 296: break;
+ case 279: break;
case 111:
// lookahead expression with fixed base length
zzMarkedPos = zzStartRead + 1;
{ yybegin(IN_DOLLAR_SLASH_REGEX_IDENT);
return mDOT;
}
- case 297: break;
+ case 280: break;
+ case 90:
+ { return mGSTRING_LITERAL;
+ }
+ case 281: break;
+ case 125:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mSL_ASSIGN);
+ }
+ case 282: break;
+ case 139:
+ { return( kFLOAT );
+ }
+ case 283: break;
+ case 106:
+ { yybegin(IN_DOLLAR_SLASH_REGEX);
+ gStringStack.push(mDOLLAR);
+ return mDOLLAR_SLASH_REGEX_BEGIN;
+ }
+ case 284: break;
+ case 45:
+ { yypushback(1);
+ yybegin(IN_TRIPLE_IDENT);
+ }
+ case 285: break;
+ case 34:
+ { yybegin(IN_SINGLE_DOT);
+ return mIDENT;
+ }
+ case 286: break;
+ case 124:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mCOMPARE_TO);
+ }
+ case 287: break;
+ case 79:
+ { return( kIF );
+ }
+ case 288: break;
+ case 140:
+ { return( kFINAL );
+ }
+ case 289: break;
+ case 102:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mBAND_ASSIGN);
+ }
+ case 290: break;
+ case 156:
+ { return( kTHROWS );
+ }
+ case 291: break;
case 76:
{ return mNUM_FLOAT;
}
- case 298: break;
- case 118:
- { yybegin(WAIT_FOR_REGEX);
- return(mTRIPLE_DOT);
+ case 292: break;
+ case 38:
+ { blockStack.push(mLBRACK);
+ braceCount.push(mLCURLY);
+ yybegin(NLS_AFTER_LBRACE);
+ return mLCURLY;
}
- case 299: break;
+ case 293: break;
+ case 47:
+ { blockStack.push(mLCURLY);
+ braceCount.push(mLCURLY);
+ yybegin(NLS_AFTER_LBRACE);
+ return(mLCURLY);
+ }
+ case 294: break;
case 116:
{ return( kINT );
}
- case 300: break;
+ case 295: break;
case 167:
{ return( kSTRICTFP );
}
- case 301: break;
- case 66:
- { yypushback(1);
- yybegin(NLS_AFTER_COMMENT);
+ case 296: break;
+ case 9:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mPLUS);
}
- case 302: break;
+ case 297: break;
case 165:
{ return( kABSTRACT );
}
- case 303: break;
+ case 298: break;
case 141:
{ return( kFALSE );
}
- case 304: break;
+ case 299: break;
+ case 41:
+ { yybegin(IN_SINGLE_GSTRING_DOLLAR);
+ return mDOLLAR;
+ }
+ case 300: break;
+ case 26:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mBNOT);
+ }
+ case 301: break;
+ case 13:
+ { yybegin(IN_SINGLE_GSTRING);
+ gStringStack.push(mLPAREN);
+ return mGSTRING_BEGIN;
+ }
+ case 302: break;
case 91:
{ return( kAS );
}
- case 305: break;
- case 46:
- { yybegin(NLS_AFTER_NLS);
- afterComment = IN_TRIPLE_IDENT;
- return mNLS;
- }
- case 306: break;
- case 119:
+ case 303: break;
+ case 72:
{ yybegin(WAIT_FOR_REGEX);
- return(mRANGE_EXCLUSIVE);
+ return(mSTAR_ASSIGN);
}
- case 307: break;
+ case 304: break;
case 166:
{ return( kCONTINUE );
}
- case 308: break;
- case 32:
- { yybegin(WAIT_FOR_REGEX);
- return(mAT);
+ case 305: break;
+ case 40:
+ { clearStacks();
+ yybegin(NLS_AFTER_NLS);
+ afterComment = YYINITIAL;
+ return mNLS;
}
- case 309: break;
+ case 306: break;
case 128:
{ return( kLONG );
}
- case 310: break;
+ case 307: break;
case 77:
{ return mNUM_LONG;
}
- case 311: break;
+ case 308: break;
case 142:
{ return( kBREAK );
}
- case 312: break;
- case 96:
- { yybegin(WAIT_FOR_REGEX);
- return(mLE);
- }
- case 313: break;
+ case 309: break;
case 162:
{ return( kBOOLEAN );
}
- case 314: break;
+ case 310: break;
case 153:
{ return( kASSERT );
}
- case 315: break;
- case 108:
- // lookahead expression with fixed base length
- zzMarkedPos = zzStartRead + 1;
- { yybegin(IN_REGEX_IDENT);
- return mDOT;
+ case 311: break;
+ case 97:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mGE);
}
- case 316: break;
+ case 312: break;
+ case 23:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mCOMMA);
+ }
+ case 313: break;
+ case 94:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mEQUAL);
+ }
+ case 314: break;
case 3:
{ return WHITE_SPACE;
}
- case 317: break;
+ case 315: break;
case 135:
{ return( kTHIS );
}
- case 318: break;
- case 51:
- { yybegin(IN_REGEX);
- gStringStack.push(mDIV);
- return mREGEX_BEGIN;
- }
- case 319: break;
+ case 316: break;
case 164:
{ return( kPRIVATE );
}
- case 320: break;
- case 147:
- { return( kTRAIT );
+ case 317: break;
+ case 18:
+ { yybegin(WAIT_FOR_REGEX);
+ braceCount.push(mLPAREN);
+ return(mLPAREN);
}
- case 321: break;
- case 44:
- { yybegin(IN_TRIPLE_GSTRING_DOLLAR);
- return mDOLLAR;
- }
- case 322: break;
- case 146:
- { return( kSHORT );
- }
- case 323: break;
- case 21:
- { if (!braceCount.isEmpty() && mLPAREN == braceCount.peek()) {
- braceCount.pop();
- }
- return(mRBRACK);
- }
- case 324: break;
- case 14:
- { yybegin(NLS_AFTER_LBRACE);
- braceCount.push(mLCURLY);
- return(mLCURLY);
- }
- case 325: break;
- case 168:
- { return( kVOLATILE );
- }
- case 326: break;
+ case 318: break;
case 105:
// lookahead expression with fixed base length
zzMarkedPos = zzStartRead + 1;
{ yybegin(IN_TRIPLE_NLS);
return mDOT;
}
- case 327: break;
- case 6:
+ case 319: break;
+ case 51:
+ { yybegin(IN_REGEX);
+ gStringStack.push(mDIV);
+ return mREGEX_BEGIN;
+ }
+ case 320: break;
+ case 147:
+ { return( kTRAIT );
+ }
+ case 321: break;
+ case 146:
+ { return( kSHORT );
+ }
+ case 322: break;
+ case 84:
{ yybegin(WAIT_FOR_REGEX);
- return(mLNOT);
+ return(mDEC);
+ }
+ case 323: break;
+ case 31:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mSEMI);
+ }
+ case 324: break;
+ case 62:
+ { yybegin(IN_DOLLAR_SLASH_REGEX_DOLLAR);
+ return mDOLLAR;
+ }
+ case 325: break;
+ case 168:
+ { return( kVOLATILE );
+ }
+ case 326: break;
+ case 14:
+ { yybegin(NLS_AFTER_LBRACE);
+ braceCount.push(mLCURLY);
+ return(mLCURLY);
+ }
+ case 327: break;
+ case 32:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mAT);
}
case 328: break;
- case 70:
- { yybegin(WAIT_FOR_REGEX);
- return(mSTAR_STAR);
- }
- case 329: break;
case 75:
{ return mNUM_BIG_INT;
}
- case 330: break;
- case 56:
- { if (!gStringStack.isEmpty()) {
- gStringStack.pop();
- }
- if (blockStack.isEmpty()){
- yybegin(YYINITIAL);
- } else {
- yybegin(IN_INNER_BLOCK);
- }
- return mREGEX_END;
+ case 329: break;
+ case 119:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mRANGE_EXCLUSIVE);
}
- case 331: break;
+ case 330: break;
case 143:
{ return( kCLASS );
}
- case 332: break;
- case 83:
+ case 331: break;
+ case 69:
{ yybegin(WAIT_FOR_REGEX);
- return(mPLUS_ASSIGN);
+ return(mDIV_ASSIGN);
+ }
+ case 332: break;
+ case 96:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mLE);
}
case 333: break;
- case 30:
- { yybegin(WAIT_FOR_REGEX);
- return(mBAND);
- }
- case 334: break;
- case 63:
- { yypushback(1);
- yybegin(IN_DOLLAR_SLASH_REGEX);
- }
- case 335: break;
- case 124:
- { yybegin(WAIT_FOR_REGEX);
- return(mCOMPARE_TO);
- }
- case 336: break;
- case 99:
- { yybegin(WAIT_FOR_REGEX);
- return(mBXOR_ASSIGN);
- }
- case 337: break;
case 157:
{ return( kRETURN );
}
+ case 334: break;
+ case 22:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mCOLON);
+ }
+ case 335: break;
+ case 108:
+ // lookahead expression with fixed base length
+ zzMarkedPos = zzStartRead + 1;
+ { yybegin(IN_REGEX_IDENT);
+ return mDOT;
+ }
+ case 336: break;
+ case 57:
+ { yybegin(IN_REGEX_DOLLAR);
+ return mDOLLAR;
+ }
+ case 337: break;
+ case 19:
+ { if (!braceCount.isEmpty() && mLPAREN == braceCount.peek()) {
+ braceCount.pop();
+ }
+ return(mRPAREN);
+ }
case 338: break;
case 43:
// general lookahead, find correct zzMarkedPos
@@ -3316,32 +3297,33 @@ public class _GroovyLexer implements FlexLexer, GroovyTokenTypes, TokenType {
{ return mGSTRING_CONTENT;
}
case 340: break;
- case 113:
+ case 103:
{ yybegin(WAIT_FOR_REGEX);
- return(mSTAR_STAR_ASSIGN);
+ return(mLAND);
}
case 341: break;
+ case 29:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mBOR);
+ }
+ case 342: break;
case 117:
{ return( kDEF );
}
- case 342: break;
- case 41:
- { yybegin(IN_SINGLE_GSTRING_DOLLAR);
- return mDOLLAR;
- }
case 343: break;
- case 40:
- { clearStacks();
- yybegin(NLS_AFTER_NLS);
- afterComment = YYINITIAL;
- return mNLS;
+ case 28:
+ { yybegin(WAIT_FOR_REGEX);
+ return(mBXOR);
}
case 344: break;
- case 54:
- { blockStack.push(mDIV);
- braceCount.push(mLCURLY);
- yybegin(NLS_AFTER_LBRACE);
- return mLCURLY;
+ case 15:
+ { while (!braceCount.isEmpty() && mLCURLY != braceCount.peek()) {
+ braceCount.pop();
+ }
+ if (!braceCount.isEmpty() && mLCURLY == braceCount.peek()) {
+ braceCount.pop();
+ }
+ return mRCURLY;
}
case 345: break;
case 149:
diff --git a/plugins/groovy/jetgroovy.iml b/plugins/groovy/jetgroovy.iml
index c8bb19d97eb1..b25e70a6dd5d 100644
--- a/plugins/groovy/jetgroovy.iml
+++ b/plugins/groovy/jetgroovy.iml
@@ -6,6 +6,7 @@
+