diff --git a/java/java-psi-impl/gen/com/intellij/lang/java/lexer/_JavaDocLexer.java b/java/java-psi-impl/gen/com/intellij/lang/java/lexer/_JavaDocLexer.java index 5640413f8a63..6fcae3b167e2 100644 --- a/java/java-psi-impl/gen/com/intellij/lang/java/lexer/_JavaDocLexer.java +++ b/java/java-psi-impl/gen/com/intellij/lang/java/lexer/_JavaDocLexer.java @@ -14,7 +14,7 @@ * limitations under the License. */ -/* The following code was generated by JFlex 1.4.3 on 1/21/15 12:57 PM */ +/* The following code was generated by JFlex 1.4.3 on 1/21/15 1:09 PM */ /* It's an automatically generated code. Do not modify it. */ package com.intellij.lang.java.lexer; @@ -28,7 +28,7 @@ import com.intellij.psi.tree.IElementType; /** * This class is a scanner generated by * JFlex 1.4.3 - * on 1/21/15 12:57 PM from the specification file + * on 1/21/15 1:09 PM from the specification file * /Users/yole/jetbrains/IDEA/tools/lexer/../../community/java/java-psi-impl/src/com/intellij/lang/java/lexer/_JavaDocLexer.flex */ class _JavaDocLexer implements FlexLexer { @@ -62,69 +62,70 @@ class _JavaDocLexer implements FlexLexer { * Translates characters to character classes */ private static final String ZZ_CMAP_PACKED = - "\11\0\1\2\1\32\1\0\1\2\1\1\22\0\1\2\2\0\1\13"+ + "\11\0\1\2\1\35\1\0\1\2\1\1\22\0\1\2\2\0\1\13"+ "\1\4\3\0\1\11\1\12\1\7\1\0\1\14\1\5\1\3\1\6"+ "\12\3\1\5\1\0\1\22\1\0\1\23\1\0\1\15\32\4\1\10"+ "\1\0\1\10\1\0\1\4\1\0\1\17\1\4\1\25\1\27\1\30"+ - "\7\4\1\21\1\4\1\26\1\16\1\4\1\20\10\4\1\24\1\0"+ - "\1\31\44\0\4\4\4\0\1\4\12\0\1\4\4\0\1\4\5\0"+ - "\27\4\1\0\37\4\1\0\u013f\4\31\0\162\4\4\0\14\4\16\0"+ - "\5\4\11\0\1\4\213\0\1\4\13\0\1\4\1\0\3\4\1\0"+ - "\1\4\1\0\24\4\1\0\54\4\1\0\46\4\1\0\5\4\4\0"+ - "\202\4\10\0\105\4\1\0\46\4\2\0\2\4\6\0\20\4\41\0"+ - "\46\4\2\0\1\4\7\0\47\4\110\0\33\4\5\0\3\4\56\0"+ - "\32\4\5\0\13\4\43\0\2\4\1\0\143\4\1\0\1\4\17\0"+ - "\2\4\7\0\2\4\12\0\3\4\2\0\1\4\20\0\1\4\1\0"+ - "\36\4\35\0\3\4\60\0\46\4\13\0\1\4\u0152\0\66\4\3\0"+ - "\1\4\22\0\1\4\7\0\12\4\43\0\10\4\2\0\2\4\2\0"+ - "\26\4\1\0\7\4\1\0\1\4\3\0\4\4\3\0\1\4\36\0"+ - "\2\4\1\0\3\4\16\0\4\4\21\0\6\4\4\0\2\4\2\0"+ - "\26\4\1\0\7\4\1\0\2\4\1\0\2\4\1\0\2\4\37\0"+ - "\4\4\1\0\1\4\23\0\3\4\20\0\11\4\1\0\3\4\1\0"+ - "\26\4\1\0\7\4\1\0\2\4\1\0\5\4\3\0\1\4\22\0"+ - "\1\4\17\0\2\4\17\0\1\4\23\0\10\4\2\0\2\4\2\0"+ - "\26\4\1\0\7\4\1\0\2\4\1\0\5\4\3\0\1\4\36\0"+ - "\2\4\1\0\3\4\17\0\1\4\21\0\1\4\1\0\6\4\3\0"+ - "\3\4\1\0\4\4\3\0\2\4\1\0\1\4\1\0\2\4\3\0"+ - "\2\4\3\0\3\4\3\0\10\4\1\0\3\4\77\0\1\4\13\0"+ - "\10\4\1\0\3\4\1\0\27\4\1\0\12\4\1\0\5\4\46\0"+ - "\2\4\43\0\10\4\1\0\3\4\1\0\27\4\1\0\12\4\1\0"+ - "\5\4\3\0\1\4\40\0\1\4\1\0\2\4\43\0\10\4\1\0"+ - "\3\4\1\0\27\4\1\0\20\4\46\0\2\4\43\0\22\4\3\0"+ - "\30\4\1\0\11\4\1\0\1\4\2\0\7\4\72\0\60\4\1\0"+ - "\2\4\13\0\10\4\72\0\2\4\1\0\1\4\2\0\2\4\1\0"+ - "\1\4\2\0\1\4\6\0\4\4\1\0\7\4\1\0\3\4\1\0"+ - "\1\4\1\0\1\4\2\0\2\4\1\0\4\4\1\0\2\4\11\0"+ - "\1\4\2\0\5\4\1\0\1\4\25\0\2\4\42\0\1\4\77\0"+ - "\10\4\1\0\42\4\35\0\4\4\164\0\42\4\1\0\5\4\1\0"+ - "\2\4\45\0\6\4\112\0\46\4\12\0\51\4\7\0\132\4\5\0"+ - "\104\4\5\0\122\4\6\0\7\4\1\0\77\4\1\0\1\4\1\0"+ - "\4\4\2\0\7\4\1\0\1\4\1\0\4\4\2\0\47\4\1\0"+ - "\1\4\1\0\4\4\2\0\37\4\1\0\1\4\1\0\4\4\2\0"+ - "\7\4\1\0\1\4\1\0\4\4\2\0\7\4\1\0\7\4\1\0"+ - "\27\4\1\0\37\4\1\0\1\4\1\0\4\4\2\0\7\4\1\0"+ - "\47\4\1\0\23\4\105\0\125\4\14\0\u026c\4\2\0\10\4\12\0"+ - "\32\4\5\0\113\4\3\0\3\4\17\0\15\4\1\0\4\4\16\0"+ - "\22\4\16\0\22\4\16\0\15\4\1\0\3\4\17\0\64\4\43\0"+ - "\1\4\3\0\2\4\103\0\130\4\10\0\51\4\127\0\35\4\63\0"+ - "\36\4\2\0\5\4\u038b\0\154\4\224\0\234\4\4\0\132\4\6\0"+ - "\26\4\2\0\6\4\2\0\46\4\2\0\6\4\2\0\10\4\1\0"+ - "\1\4\1\0\1\4\1\0\1\4\1\0\37\4\2\0\65\4\1\0"+ - "\7\4\1\0\1\4\3\0\3\4\1\0\7\4\3\0\4\4\2\0"+ - "\6\4\4\0\15\4\5\0\3\4\1\0\7\4\102\0\2\4\23\0"+ - "\1\4\34\0\1\4\15\0\1\4\40\0\22\4\120\0\1\4\4\0"+ - "\1\4\2\0\12\4\1\0\1\4\3\0\5\4\6\0\1\4\1\0"+ - "\1\4\1\0\1\4\1\0\4\4\1\0\3\4\1\0\7\4\3\0"+ - "\3\4\5\0\5\4\26\0\44\4\u0e81\0\3\4\31\0\11\4\7\0"+ - "\5\4\2\0\5\4\4\0\126\4\6\0\3\4\1\0\137\4\5\0"+ - "\50\4\4\0\136\4\21\0\30\4\70\0\20\4\u0200\0\u19b6\4\112\0"+ - "\u51a6\4\132\0\u048d\4\u0773\0\u2ba4\4\u215c\0\u012e\4\2\0\73\4\225\0"+ - "\7\4\14\0\5\4\5\0\1\4\1\0\12\4\1\0\15\4\1\0"+ - "\5\4\1\0\1\4\1\0\2\4\1\0\2\4\1\0\154\4\41\0"+ - "\u016b\4\22\0\100\4\2\0\66\4\50\0\15\4\66\0\2\4\30\0"+ - "\3\4\31\0\1\4\6\0\5\4\1\0\207\4\7\0\1\4\34\0"+ - "\32\4\4\0\1\4\1\0\32\4\12\0\132\4\3\0\6\4\2\0"+ - "\6\4\2\0\6\4\2\0\3\4\3\0\2\4\3\0\2\4\31\0"; + "\3\4\1\32\2\4\1\31\1\21\1\4\1\26\1\16\1\4\1\20"+ + "\1\4\1\33\6\4\1\24\1\0\1\34\44\0\4\4\4\0\1\4"+ + "\12\0\1\4\4\0\1\4\5\0\27\4\1\0\37\4\1\0\u013f\4"+ + "\31\0\162\4\4\0\14\4\16\0\5\4\11\0\1\4\213\0\1\4"+ + "\13\0\1\4\1\0\3\4\1\0\1\4\1\0\24\4\1\0\54\4"+ + "\1\0\46\4\1\0\5\4\4\0\202\4\10\0\105\4\1\0\46\4"+ + "\2\0\2\4\6\0\20\4\41\0\46\4\2\0\1\4\7\0\47\4"+ + "\110\0\33\4\5\0\3\4\56\0\32\4\5\0\13\4\43\0\2\4"+ + "\1\0\143\4\1\0\1\4\17\0\2\4\7\0\2\4\12\0\3\4"+ + "\2\0\1\4\20\0\1\4\1\0\36\4\35\0\3\4\60\0\46\4"+ + "\13\0\1\4\u0152\0\66\4\3\0\1\4\22\0\1\4\7\0\12\4"+ + "\43\0\10\4\2\0\2\4\2\0\26\4\1\0\7\4\1\0\1\4"+ + "\3\0\4\4\3\0\1\4\36\0\2\4\1\0\3\4\16\0\4\4"+ + "\21\0\6\4\4\0\2\4\2\0\26\4\1\0\7\4\1\0\2\4"+ + "\1\0\2\4\1\0\2\4\37\0\4\4\1\0\1\4\23\0\3\4"+ + "\20\0\11\4\1\0\3\4\1\0\26\4\1\0\7\4\1\0\2\4"+ + "\1\0\5\4\3\0\1\4\22\0\1\4\17\0\2\4\17\0\1\4"+ + "\23\0\10\4\2\0\2\4\2\0\26\4\1\0\7\4\1\0\2\4"+ + "\1\0\5\4\3\0\1\4\36\0\2\4\1\0\3\4\17\0\1\4"+ + "\21\0\1\4\1\0\6\4\3\0\3\4\1\0\4\4\3\0\2\4"+ + "\1\0\1\4\1\0\2\4\3\0\2\4\3\0\3\4\3\0\10\4"+ + "\1\0\3\4\77\0\1\4\13\0\10\4\1\0\3\4\1\0\27\4"+ + "\1\0\12\4\1\0\5\4\46\0\2\4\43\0\10\4\1\0\3\4"+ + "\1\0\27\4\1\0\12\4\1\0\5\4\3\0\1\4\40\0\1\4"+ + "\1\0\2\4\43\0\10\4\1\0\3\4\1\0\27\4\1\0\20\4"+ + "\46\0\2\4\43\0\22\4\3\0\30\4\1\0\11\4\1\0\1\4"+ + "\2\0\7\4\72\0\60\4\1\0\2\4\13\0\10\4\72\0\2\4"+ + "\1\0\1\4\2\0\2\4\1\0\1\4\2\0\1\4\6\0\4\4"+ + "\1\0\7\4\1\0\3\4\1\0\1\4\1\0\1\4\2\0\2\4"+ + "\1\0\4\4\1\0\2\4\11\0\1\4\2\0\5\4\1\0\1\4"+ + "\25\0\2\4\42\0\1\4\77\0\10\4\1\0\42\4\35\0\4\4"+ + "\164\0\42\4\1\0\5\4\1\0\2\4\45\0\6\4\112\0\46\4"+ + "\12\0\51\4\7\0\132\4\5\0\104\4\5\0\122\4\6\0\7\4"+ + "\1\0\77\4\1\0\1\4\1\0\4\4\2\0\7\4\1\0\1\4"+ + "\1\0\4\4\2\0\47\4\1\0\1\4\1\0\4\4\2\0\37\4"+ + "\1\0\1\4\1\0\4\4\2\0\7\4\1\0\1\4\1\0\4\4"+ + "\2\0\7\4\1\0\7\4\1\0\27\4\1\0\37\4\1\0\1\4"+ + "\1\0\4\4\2\0\7\4\1\0\47\4\1\0\23\4\105\0\125\4"+ + "\14\0\u026c\4\2\0\10\4\12\0\32\4\5\0\113\4\3\0\3\4"+ + "\17\0\15\4\1\0\4\4\16\0\22\4\16\0\22\4\16\0\15\4"+ + "\1\0\3\4\17\0\64\4\43\0\1\4\3\0\2\4\103\0\130\4"+ + "\10\0\51\4\127\0\35\4\63\0\36\4\2\0\5\4\u038b\0\154\4"+ + "\224\0\234\4\4\0\132\4\6\0\26\4\2\0\6\4\2\0\46\4"+ + "\2\0\6\4\2\0\10\4\1\0\1\4\1\0\1\4\1\0\1\4"+ + "\1\0\37\4\2\0\65\4\1\0\7\4\1\0\1\4\3\0\3\4"+ + "\1\0\7\4\3\0\4\4\2\0\6\4\4\0\15\4\5\0\3\4"+ + "\1\0\7\4\102\0\2\4\23\0\1\4\34\0\1\4\15\0\1\4"+ + "\40\0\22\4\120\0\1\4\4\0\1\4\2\0\12\4\1\0\1\4"+ + "\3\0\5\4\6\0\1\4\1\0\1\4\1\0\1\4\1\0\4\4"+ + "\1\0\3\4\1\0\7\4\3\0\3\4\5\0\5\4\26\0\44\4"+ + "\u0e81\0\3\4\31\0\11\4\7\0\5\4\2\0\5\4\4\0\126\4"+ + "\6\0\3\4\1\0\137\4\5\0\50\4\4\0\136\4\21\0\30\4"+ + "\70\0\20\4\u0200\0\u19b6\4\112\0\u51a6\4\132\0\u048d\4\u0773\0\u2ba4\4"+ + "\u215c\0\u012e\4\2\0\73\4\225\0\7\4\14\0\5\4\5\0\1\4"+ + "\1\0\12\4\1\0\15\4\1\0\5\4\1\0\1\4\1\0\2\4"+ + "\1\0\2\4\1\0\154\4\41\0\u016b\4\22\0\100\4\2\0\66\4"+ + "\50\0\15\4\66\0\2\4\30\0\3\4\31\0\1\4\6\0\5\4"+ + "\1\0\207\4\7\0\1\4\34\0\32\4\4\0\1\4\1\0\32\4"+ + "\12\0\132\4\3\0\6\4\2\0\6\4\2\0\6\4\2\0\3\4"+ + "\3\0\2\4\3\0\2\4\31\0"; /** * Translates characters to character classes @@ -139,11 +140,11 @@ class _JavaDocLexer implements FlexLexer { private static final String ZZ_ACTION_PACKED_0 = "\12\0\3\1\1\2\1\3\2\2\1\4\1\5\1\6"+ "\1\7\1\10\1\11\1\12\1\13\1\14\1\15\1\16"+ - "\1\17\1\12\1\20\1\1\1\0\1\21\1\0\3\22"+ - "\1\23\5\22\1\24\1\25"; + "\1\17\1\12\1\20\1\1\1\0\1\21\1\0\4\22"+ + "\1\23\7\22\1\24\1\22\1\25\2\22"; private static int [] zzUnpackAction() { - int [] result = new int[46]; + int [] result = new int[52]; int offset = 0; offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result); return result; @@ -168,15 +169,16 @@ class _JavaDocLexer implements FlexLexer { private static final int [] ZZ_ROWMAP = zzUnpackRowMap(); private static final String ZZ_ROWMAP_PACKED_0 = - "\0\0\0\33\0\66\0\121\0\154\0\207\0\242\0\275"+ - "\0\330\0\363\0\u010e\0\u0129\0\u0144\0\u010e\0\u015f\0\u0144"+ - "\0\u017a\0\u010e\0\u010e\0\u0195\0\u01b0\0\u01cb\0\u01e6\0\u0201"+ - "\0\u010e\0\u010e\0\u010e\0\u010e\0\u010e\0\u021c\0\u010e\0\u0237"+ - "\0\u0252\0\u010e\0\u0144\0\u026d\0\u0288\0\u02a3\0\u010e\0\u02be"+ - "\0\u02d9\0\u02f4\0\u030f\0\u032a\0\u026d\0\u026d"; + "\0\0\0\36\0\74\0\132\0\170\0\226\0\264\0\322"+ + "\0\360\0\u010e\0\u012c\0\u014a\0\u0168\0\u012c\0\u0186\0\u0168"+ + "\0\u01a4\0\u012c\0\u012c\0\u01c2\0\u01e0\0\u01fe\0\u021c\0\u023a"+ + "\0\u012c\0\u012c\0\u012c\0\u012c\0\u012c\0\u0258\0\u012c\0\u0276"+ + "\0\u0294\0\u012c\0\u0168\0\u02b2\0\u02d0\0\u02ee\0\u030c\0\u012c"+ + "\0\u032a\0\u0348\0\u0366\0\u0384\0\u03a2\0\u03c0\0\u03de\0\u02b2"+ + "\0\u03fc\0\u02b2\0\u041a\0\u0438"; private static int [] zzUnpackRowMap() { - int [] result = new int[46]; + int [] result = new int[52]; int offset = 0; offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result); return result; @@ -199,35 +201,41 @@ class _JavaDocLexer implements FlexLexer { private static final int [] ZZ_TRANS = zzUnpackTrans(); private static final String ZZ_TRANS_PACKED_0 = - "\6\13\1\14\1\15\23\13\1\16\2\17\4\16\1\20"+ - "\5\16\1\21\6\16\1\22\4\16\1\23\1\17\1\16"+ - "\1\17\1\24\4\16\1\20\14\16\1\22\4\16\1\23"+ - "\1\17\1\13\2\25\4\13\1\15\21\13\1\23\1\25"+ - "\1\13\2\26\4\13\1\15\22\13\1\26\1\16\2\27"+ + "\6\13\1\14\1\15\26\13\1\16\2\17\4\16\1\20"+ + "\5\16\1\21\6\16\1\22\7\16\1\23\1\17\1\16"+ + "\1\17\1\24\4\16\1\20\14\16\1\22\7\16\1\23"+ + "\1\17\1\13\2\25\4\13\1\15\24\13\1\23\1\25"+ + "\1\13\2\26\4\13\1\15\25\13\1\26\1\16\2\27"+ "\2\30\2\16\1\20\1\30\1\31\1\16\1\32\1\33"+ - "\1\16\4\30\1\34\2\16\4\30\1\23\1\27\1\13"+ + "\1\16\4\30\1\34\2\16\7\30\1\23\1\27\1\13"+ "\2\17\2\30\2\13\1\15\1\30\1\13\1\35\1\13"+ - "\1\33\1\13\4\30\3\13\4\30\1\13\1\17\4\13"+ + "\1\33\1\13\4\30\3\13\7\30\1\13\1\17\4\13"+ "\1\36\2\13\1\15\6\13\4\36\1\13\1\37\1\13"+ - "\4\36\11\13\1\15\5\13\1\40\15\13\7\16\1\20"+ - "\21\16\1\23\1\13\42\0\1\41\31\0\1\42\1\43"+ - "\24\0\2\17\27\0\1\17\4\0\1\44\11\0\1\45"+ - "\3\44\3\0\4\44\4\0\1\24\31\0\2\25\27\0"+ - "\1\25\1\0\2\26\27\0\1\26\1\0\2\27\27\0"+ + "\7\36\11\13\1\15\5\13\1\40\20\13\7\16\1\20"+ + "\24\16\1\23\1\13\45\0\1\41\34\0\1\42\1\43"+ + "\27\0\2\17\32\0\1\17\4\0\1\44\11\0\1\45"+ + "\3\44\3\0\7\44\4\0\1\24\34\0\2\25\32\0"+ + "\1\25\1\0\2\26\32\0\1\26\1\0\2\27\32\0"+ "\1\27\3\0\2\30\3\0\1\30\5\0\4\30\3\0"+ - "\4\30\5\0\3\36\10\0\4\36\3\0\4\36\6\0"+ - "\1\44\11\0\1\45\3\44\3\0\1\46\3\44\11\0"+ - "\1\47\26\0\3\44\10\0\4\44\3\0\4\44\5\0"+ - "\3\44\10\0\1\44\1\50\2\44\3\0\4\44\5\0"+ - "\3\44\10\0\4\44\3\0\1\44\1\51\2\44\5\0"+ - "\3\44\10\0\2\44\1\52\1\44\3\0\4\44\5\0"+ - "\3\44\10\0\4\44\3\0\2\44\1\53\1\44\5\0"+ - "\3\44\10\0\1\44\1\54\2\44\3\0\4\44\5\0"+ - "\3\44\10\0\4\44\3\0\3\44\1\55\5\0\3\44"+ - "\10\0\3\44\1\56\3\0\4\44\2\0"; + "\7\30\5\0\3\36\10\0\4\36\3\0\7\36\6\0"+ + "\1\44\11\0\1\45\3\44\3\0\1\46\3\44\1\47"+ + "\2\44\11\0\1\50\31\0\3\44\10\0\4\44\3\0"+ + "\7\44\5\0\3\44\10\0\1\44\1\51\2\44\3\0"+ + "\7\44\5\0\3\44\10\0\4\44\3\0\1\44\1\52"+ + "\5\44\5\0\3\44\10\0\4\44\3\0\5\44\1\53"+ + "\1\44\5\0\3\44\10\0\2\44\1\54\1\44\3\0"+ + "\7\44\5\0\3\44\10\0\4\44\3\0\2\44\1\55"+ + "\4\44\5\0\3\44\10\0\4\44\3\0\6\44\1\56"+ + "\5\0\3\44\10\0\1\44\1\57\2\44\3\0\7\44"+ + "\5\0\3\44\10\0\4\44\3\0\3\44\1\60\3\44"+ + "\5\0\3\44\10\0\4\44\3\0\3\44\1\61\3\44"+ + "\5\0\3\44\10\0\3\44\1\62\3\0\7\44\5\0"+ + "\3\44\10\0\2\44\1\63\1\44\3\0\7\44\5\0"+ + "\3\44\10\0\1\44\1\64\2\44\3\0\7\44\5\0"+ + "\3\44\10\0\4\44\3\0\4\44\1\60\2\44\2\0"; private static int [] zzUnpackTrans() { - int [] result = new int[837]; + int [] result = new int[1110]; int offset = 0; offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result); return result; @@ -269,11 +277,11 @@ class _JavaDocLexer implements FlexLexer { private static final String ZZ_ATTRIBUTE_PACKED_0 = "\12\0\1\11\2\1\1\11\3\1\2\11\5\1\5\11"+ - "\1\1\1\11\1\1\1\0\1\11\1\0\3\1\1\11"+ - "\7\1"; + "\1\1\1\11\1\1\1\0\1\11\1\0\4\1\1\11"+ + "\14\1"; private static int [] zzUnpackAttribute() { - int [] result = new int[46]; + int [] result = new int[52]; int offset = 0; offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result); return result; @@ -377,7 +385,7 @@ class _JavaDocLexer implements FlexLexer { char [] map = new char[0x10000]; int i = 0; /* index in packed string */ int j = 0; /* index in unpacked array */ - while (i < 1260) { + while (i < 1270) { int count = packed.charAt(i++); char value = packed.charAt(i++); do map[j++] = value; while (--count > 0); diff --git a/java/java-psi-impl/src/com/intellij/lang/java/lexer/_JavaDocLexer.flex b/java/java-psi-impl/src/com/intellij/lang/java/lexer/_JavaDocLexer.flex index 90281bb9e956..edf1a727686e 100644 --- a/java/java-psi-impl/src/com/intellij/lang/java/lexer/_JavaDocLexer.flex +++ b/java/java-psi-impl/src/com/intellij/lang/java/lexer/_JavaDocLexer.flex @@ -96,6 +96,7 @@ IDENTIFIER={ALPHA}({ALPHA}|{DIGIT}|[":.-"])* } } "@code" { yybegin(CODE_TAG); return myTokenTypes.tagName(); } + "@literal" { yybegin(CODE_TAG); return myTokenTypes.tagName(); } "@"{IDENTIFIER} { yybegin(TAG_DOC_SPACE); return myTokenTypes.tagName(); } "}" { yybegin(COMMENT_DATA); return myTokenTypes.inlineTagEnd(); } diff --git a/java/java-tests/testData/psi/parser-full/javadocParsing/LiteralTag.java b/java/java-tests/testData/psi/parser-full/javadocParsing/LiteralTag.java new file mode 100644 index 000000000000..429d84450e10 --- /dev/null +++ b/java/java-tests/testData/psi/parser-full/javadocParsing/LiteralTag.java @@ -0,0 +1,6 @@ +/** + * You may want to call the {@literal works(String, Map} method. + * @see java.util.Map + * @see #works(String, java.util.Map) + */ +class X {} diff --git a/java/java-tests/testData/psi/parser-full/javadocParsing/LiteralTag.txt b/java/java-tests/testData/psi/parser-full/javadocParsing/LiteralTag.txt new file mode 100644 index 000000000000..8f249b92b0e4 --- /dev/null +++ b/java/java-tests/testData/psi/parser-full/javadocParsing/LiteralTag.txt @@ -0,0 +1,89 @@ +PsiJavaFile:LiteralTag.java + PsiImportList + + PsiClass:X + PsiDocComment + PsiDocToken:DOC_COMMENT_START('/**') + PsiWhiteSpace('\n ') + PsiDocToken:DOC_COMMENT_LEADING_ASTERISKS('*') + PsiDocToken:DOC_COMMENT_DATA(' You may want to call the ') + PsiInlineDocTag:@literal + PsiDocToken:DOC_INLINE_TAG_START('{') + PsiDocToken:DOC_TAG_NAME('@literal') + PsiDocToken:DOC_COMMENT_DATA(' works(String, Map') + PsiDocToken:DOC_INLINE_TAG_END('}') + PsiDocToken:DOC_COMMENT_DATA(' method.') + PsiWhiteSpace('\n ') + PsiDocToken:DOC_COMMENT_LEADING_ASTERISKS('*') + PsiDocToken:DOC_COMMENT_DATA(' ') + PsiDocTag:@see + PsiDocToken:DOC_TAG_NAME('@see') + PsiWhiteSpace(' ') + PsiElement(DOC_REFERENCE_HOLDER) + PsiJavaCodeReferenceElement:java.util.Map + PsiJavaCodeReferenceElement:java.util + PsiJavaCodeReferenceElement:java + PsiIdentifier:java('java') + PsiReferenceParameterList + + PsiJavaToken:DOT('.') + PsiIdentifier:util('util') + PsiReferenceParameterList + + PsiJavaToken:DOT('.') + PsiIdentifier:Map('Map') + PsiReferenceParameterList + + PsiWhiteSpace('\n ') + PsiDocToken:DOC_COMMENT_LEADING_ASTERISKS('*') + PsiDocToken:DOC_COMMENT_DATA(' ') + PsiDocTag:@see + PsiDocToken:DOC_TAG_NAME('@see') + PsiWhiteSpace(' ') + PsiElement(DOC_METHOD_OR_FIELD_REF) + PsiDocToken:DOC_TAG_VALUE_SHARP_TOKEN('#') + PsiDocToken:DOC_TAG_VALUE_TOKEN('works') + PsiDocToken:DOC_TAG_VALUE_LPAREN('(') + PsiElement(DOC_TAG_VALUE_ELEMENT) + PsiElement(DOC_TYPE_HOLDER) + PsiTypeElement:String + PsiJavaCodeReferenceElement:String + PsiIdentifier:String('String') + PsiReferenceParameterList + + PsiDocToken:DOC_TAG_VALUE_COMMA(',') + PsiWhiteSpace(' ') + PsiElement(DOC_TYPE_HOLDER) + PsiTypeElement:java.util.Map + PsiJavaCodeReferenceElement:java.util.Map + PsiJavaCodeReferenceElement:java.util + PsiJavaCodeReferenceElement:java + PsiIdentifier:java('java') + PsiReferenceParameterList + + PsiJavaToken:DOT('.') + PsiIdentifier:util('util') + PsiReferenceParameterList + + PsiJavaToken:DOT('.') + PsiIdentifier:Map('Map') + PsiReferenceParameterList + + PsiDocToken:DOC_TAG_VALUE_RPAREN(')') + PsiWhiteSpace('\n ') + PsiDocToken:DOC_COMMENT_END('*/') + PsiWhiteSpace('\n') + PsiModifierList: + + PsiKeyword:class('class') + PsiWhiteSpace(' ') + PsiIdentifier:X('X') + PsiTypeParameterList + + PsiReferenceList + + PsiReferenceList + + PsiWhiteSpace(' ') + PsiJavaToken:LBRACE('{') + PsiJavaToken:RBRACE('}') \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/lang/java/parser/JavadocParsingTest.java b/java/java-tests/testSrc/com/intellij/lang/java/parser/JavadocParsingTest.java index 0357cf59b3a1..aa6b7c9aa7d1 100644 --- a/java/java-tests/testSrc/com/intellij/lang/java/parser/JavadocParsingTest.java +++ b/java/java-tests/testSrc/com/intellij/lang/java/parser/JavadocParsingTest.java @@ -82,6 +82,7 @@ public class JavadocParsingTest extends JavaParsingTestCase { public void testParameterlessTag() { doTest(true); } public void testCodeTag() { doTest(true); } - + public void testLiteralTag() { doTest(true); } + public void testIDEADEV_41403() { doTest(true); } }