diff --git a/gen/org/intellij/clojure/parser/_ClojureLexer.java b/gen/org/intellij/clojure/parser/_ClojureLexer.java index a71fcd8..e14b203 100644 --- a/gen/org/intellij/clojure/parser/_ClojureLexer.java +++ b/gen/org/intellij/clojure/parser/_ClojureLexer.java @@ -125,11 +125,11 @@ public static int ZZ_CMAP(int ch) { /* The ZZ_CMAP_A table has 3472 entries */ static final char ZZ_CMAP_A[] = zzUnpackCMap( - "\11\0\1\1\4\3\22\0\1\1\1\64\1\4\1\46\3\42\1\44\1\52\1\53\1\42\1\6\1\60\1\62"+ - "\1\10\1\20\1\13\11\7\1\45\1\2\1\65\1\63\1\42\1\66\1\51\4\43\1\11\1\43\6\17"+ - "\1\12\15\17\1\54\1\5\1\55\1\47\1\64\1\61\1\25\1\24\1\26\1\41\1\32\1\21\2\17"+ - "\1\36\1\17\1\27\1\35\1\40\1\22\1\37\1\31\1\17\1\16\1\30\1\33\1\23\1\17\1\34"+ - "\1\14\2\17\1\56\1\42\1\57\1\50\6\0\1\3\12\0\1\1\11\0\1\67\12\0\1\67\4\0\1"+ + "\11\0\1\1\4\3\22\0\1\1\1\64\1\4\1\46\3\43\1\44\1\52\1\53\1\43\1\6\1\60\1\62"+ + "\1\10\1\20\1\13\11\7\1\45\1\2\1\65\1\63\1\43\1\66\1\51\4\24\1\11\1\24\6\17"+ + "\1\12\15\17\1\54\1\5\1\55\1\47\1\64\1\61\1\26\1\25\1\27\1\42\1\33\1\21\2\17"+ + "\1\37\1\17\1\30\1\36\1\41\1\22\1\40\1\32\1\17\1\16\1\31\1\34\1\23\1\17\1\35"+ + "\1\14\2\17\1\56\1\43\1\57\1\50\6\0\1\3\12\0\1\1\11\0\1\67\12\0\1\67\4\0\1"+ "\67\5\0\27\67\1\0\12\67\4\0\14\67\16\0\5\67\7\0\1\67\1\0\1\67\1\0\5\67\1\0"+ "\2\67\2\0\4\67\1\0\1\67\6\0\1\67\1\0\3\67\1\0\1\67\1\0\4\67\1\0\23\67\1\0"+ "\11\67\1\0\26\67\2\0\1\67\6\0\10\67\10\0\16\67\1\0\1\67\1\0\2\67\1\0\2\67"+ @@ -271,29 +271,29 @@ private static int zzUnpackRowMap(String packed, int offset, int [] result) { private static final String ZZ_TRANS_PACKED_0 = "\1\6\1\7\1\10\1\7\1\11\1\12\1\13\1\14"+ "\1\15\2\16\1\17\1\16\1\6\2\16\1\20\1\21"+ - "\1\22\10\16\1\23\10\16\1\24\1\25\1\26\1\27"+ + "\1\22\11\16\1\23\7\16\1\24\1\25\1\26\1\27"+ "\1\30\1\31\1\32\1\33\1\34\1\35\1\36\1\37"+ "\1\40\1\41\1\13\5\16\6\42\2\43\1\44\7\43"+ "\1\42\24\43\1\42\1\43\13\42\6\43\10\42\1\45"+ "\7\42\1\46\24\42\1\47\30\42\2\50\1\51\7\50"+ "\1\52\24\50\1\47\1\50\13\42\6\50\1\53\1\54"+ "\1\53\1\54\1\55\2\53\1\54\1\53\7\54\1\53"+ - "\21\54\1\53\1\54\1\56\1\57\1\60\1\61\2\53"+ - "\1\55\3\53\1\55\4\53\1\62\1\63\1\47\1\64"+ - "\1\54\71\0\1\7\1\0\1\7\64\0\3\10\1\0"+ - "\64\10\4\11\1\65\1\66\62\11\3\67\1\0\12\67"+ - "\1\70\2\67\1\71\1\72\1\73\1\74\3\67\1\75"+ - "\2\67\1\76\34\67\6\0\1\43\1\77\1\100\2\43"+ + "\22\54\1\53\1\56\1\57\1\60\1\61\2\53\1\55"+ + "\3\53\1\55\4\53\1\62\1\63\1\47\1\64\1\54"+ + "\71\0\1\7\1\0\1\7\64\0\3\10\1\0\64\10"+ + "\4\11\1\65\1\66\62\11\3\67\1\0\12\67\1\70"+ + "\2\67\1\71\1\72\1\73\1\67\1\74\3\67\1\75"+ + "\2\67\1\76\33\67\6\0\1\43\1\77\1\100\2\43"+ "\1\101\4\43\1\0\24\43\1\0\1\43\13\0\6\43"+ "\7\0\1\102\1\103\1\104\1\105\1\102\2\0\1\106"+ - "\1\0\1\107\11\0\1\104\43\0\2\110\1\111\7\110"+ + "\1\0\1\107\12\0\1\104\42\0\2\110\1\111\7\110"+ "\1\0\24\110\1\0\1\110\13\0\1\112\5\110\6\0"+ "\2\43\1\100\7\43\1\0\24\43\1\0\1\43\13\0"+ "\6\43\7\0\1\102\1\103\1\104\1\105\1\102\1\113"+ - "\1\0\1\106\1\0\1\107\11\0\1\104\43\0\37\114"+ + "\1\0\1\106\1\0\1\107\12\0\1\104\42\0\37\114"+ "\1\0\1\114\13\0\6\114\6\0\2\43\1\100\7\43"+ - "\1\0\4\43\1\115\17\43\1\0\1\43\13\0\6\43"+ - "\6\0\2\43\1\100\7\43\1\0\15\43\1\116\6\43"+ + "\1\0\5\43\1\115\16\43\1\0\1\43\13\0\6\43"+ + "\6\0\2\43\1\100\7\43\1\0\16\43\1\116\5\43"+ "\1\0\1\43\13\0\6\43\6\0\2\43\1\100\5\43"+ "\1\117\1\43\1\0\24\43\1\0\1\43\13\0\6\43"+ "\45\0\1\120\73\0\1\121\24\0\2\43\1\100\7\43"+ @@ -302,64 +302,68 @@ private static int zzUnpackRowMap(String packed, int offset, int [] result) { "\6\0\2\50\1\123\7\50\1\0\24\50\1\124\1\50"+ "\13\0\6\50\6\0\2\50\1\0\7\50\1\0\24\50"+ "\1\0\1\50\13\0\6\50\51\0\1\125\16\0\3\11"+ - "\1\0\64\11\32\0\1\126\74\0\1\127\62\0\1\130"+ - "\44\0\1\131\3\0\1\131\101\0\1\132\73\0\1\133"+ - "\63\0\1\134\50\0\1\43\1\135\1\136\1\137\1\140"+ - "\1\135\2\43\1\141\1\43\1\107\11\43\1\137\12\43"+ - "\1\122\1\43\13\0\6\43\6\0\1\43\1\135\1\136"+ - "\1\137\1\140\1\135\1\142\1\43\1\141\1\43\1\107"+ - "\11\43\1\137\12\43\1\122\1\43\13\0\6\43\7\0"+ - "\1\143\1\103\1\104\1\105\1\143\2\0\1\106\1\0"+ - "\1\107\11\0\1\104\44\0\1\103\1\0\1\104\1\105"+ - "\1\103\16\0\1\104\43\0\1\144\1\145\3\0\1\145"+ - "\46\0\1\144\14\0\1\146\1\0\7\146\1\0\21\146"+ - "\1\0\1\146\33\0\1\147\3\0\1\147\62\0\2\150"+ + "\1\0\64\11\33\0\1\126\74\0\1\127\62\0\1\130"+ + "\43\0\1\131\1\0\1\131\1\0\1\131\5\0\1\131"+ + "\2\0\4\131\3\0\1\131\6\0\1\131\53\0\1\132"+ + "\73\0\1\133\63\0\1\134\47\0\1\43\1\135\1\136"+ + "\1\137\1\140\1\135\2\43\1\141\1\43\1\107\12\43"+ + "\1\137\11\43\1\122\1\43\13\0\6\43\6\0\1\43"+ + "\1\135\1\136\1\137\1\140\1\135\1\142\1\43\1\141"+ + "\1\43\1\107\12\43\1\137\11\43\1\122\1\43\13\0"+ + "\6\43\7\0\1\143\1\103\1\104\1\105\1\143\2\0"+ + "\1\106\1\0\1\107\12\0\1\104\43\0\1\103\1\0"+ + "\1\104\1\105\1\103\17\0\1\104\42\0\1\144\1\145"+ + "\3\0\1\145\46\0\1\144\14\0\1\146\1\0\7\146"+ + "\1\0\22\146\34\0\1\147\3\0\1\147\62\0\2\150"+ "\1\100\7\150\1\0\24\150\1\0\1\150\13\0\6\150"+ "\6\0\2\151\1\152\7\151\1\0\24\151\1\0\1\151"+ "\13\0\6\151\7\0\1\153\1\0\1\153\1\0\1\153"+ - "\1\0\1\153\3\0\1\153\2\0\3\153\3\0\1\153"+ - "\6\0\1\153\1\0\1\153\32\0\2\43\1\100\7\43"+ - "\1\0\14\43\1\154\7\43\1\122\1\43\13\0\6\43"+ - "\6\0\2\43\1\100\7\43\1\0\14\43\1\155\7\43"+ - "\1\122\1\43\13\0\6\43\6\0\2\43\1\100\7\43"+ - "\1\0\2\43\1\156\21\43\1\122\1\43\13\0\6\43"+ - "\6\0\2\157\1\160\7\157\1\0\24\157\1\0\1\157"+ - "\13\0\6\157\6\0\2\161\1\162\7\161\1\0\24\161"+ - "\1\0\1\161\13\0\6\161\33\0\1\163\52\0\1\164"+ - "\105\0\1\165\42\0\1\166\3\0\1\166\102\0\1\167"+ - "\66\0\1\170\66\0\1\67\51\0\1\43\1\171\1\136"+ - "\1\137\1\140\1\171\2\43\1\141\1\43\1\107\11\43"+ - "\1\137\12\43\1\122\1\43\13\0\6\43\6\0\1\43"+ - "\1\172\1\0\1\137\1\140\1\172\4\43\1\0\11\43"+ - "\1\137\12\43\1\0\1\43\13\0\6\43\6\0\1\173"+ + "\1\0\1\153\3\0\1\153\2\0\4\153\3\0\1\153"+ + "\6\0\1\153\33\0\2\43\1\100\7\43\1\0\15\43"+ + "\1\154\6\43\1\122\1\43\13\0\6\43\6\0\2\43"+ + "\1\100\7\43\1\0\15\43\1\155\6\43\1\122\1\43"+ + "\13\0\6\43\6\0\2\43\1\100\7\43\1\0\2\43"+ + "\1\156\21\43\1\122\1\43\13\0\6\43\6\0\2\157"+ + "\1\160\7\157\1\0\24\157\1\0\1\157\13\0\6\157"+ + "\6\0\2\161\1\162\7\161\1\0\24\161\1\0\1\161"+ + "\13\0\6\161\34\0\1\163\51\0\1\164\106\0\1\165"+ + "\41\0\1\166\1\0\1\166\1\0\1\166\5\0\1\166"+ + "\2\0\4\166\3\0\1\166\6\0\1\166\54\0\1\167"+ + "\66\0\1\170\66\0\1\67\50\0\1\43\1\171\1\136"+ + "\1\137\1\140\1\171\2\43\1\141\1\43\1\107\12\43"+ + "\1\137\11\43\1\122\1\43\13\0\6\43\6\0\1\43"+ + "\1\172\1\0\1\137\1\140\1\172\4\43\1\0\12\43"+ + "\1\137\11\43\1\0\1\43\13\0\6\43\6\0\1\173"+ "\1\174\1\100\2\43\1\174\4\43\1\0\24\43\1\122"+ "\1\43\13\0\1\173\5\43\6\0\1\43\1\175\1\100"+ - "\7\175\1\0\21\175\1\43\1\175\1\43\1\122\1\43"+ - "\13\0\6\43\6\0\1\43\1\176\1\100\1\176\1\43"+ - "\1\176\1\43\1\176\2\43\1\0\1\176\2\43\3\176"+ - "\3\43\1\176\6\43\1\176\1\43\1\176\1\43\1\122"+ - "\1\43\13\0\6\43\7\0\1\143\1\103\1\104\1\105"+ - "\1\143\4\0\1\107\11\0\1\104\44\0\1\145\3\0"+ - "\1\145\63\0\1\145\2\0\1\105\1\145\62\0\2\151"+ - "\1\0\7\151\1\0\24\151\1\0\1\151\13\0\6\151"+ - "\6\0\2\43\1\100\7\43\1\0\7\43\1\156\14\43"+ - "\1\122\1\43\13\0\6\43\6\0\2\43\1\100\7\43"+ - "\1\0\11\43\1\177\12\43\1\122\1\43\13\0\6\43"+ - "\6\0\2\157\1\0\7\157\1\0\24\157\1\0\1\157"+ - "\13\0\6\157\6\0\2\161\1\0\7\161\1\0\24\161"+ - "\1\0\1\161\13\0\6\161\23\0\1\200\104\0\1\201"+ - "\64\0\1\202\41\0\1\203\3\0\1\203\103\0\1\204"+ - "\66\0\1\205\47\0\1\43\1\171\1\136\1\137\1\140"+ - "\1\171\4\43\1\107\11\43\1\137\12\43\1\122\1\43"+ - "\13\0\6\43\6\0\1\43\1\172\1\100\1\137\1\140"+ - "\1\172\4\43\1\0\11\43\1\137\12\43\1\122\1\43"+ - "\13\0\6\43\6\0\1\43\1\174\1\100\2\43\1\174"+ - "\4\43\1\0\24\43\1\122\1\43\13\0\6\43\6\0"+ - "\1\43\1\174\1\100\1\43\1\140\1\174\4\43\1\0"+ - "\24\43\1\122\1\43\13\0\6\43\16\0\1\206\72\0"+ - "\1\207\104\0\1\210\40\0\1\67\3\0\1\67\104\0"+ - "\1\211\71\0\1\67\57\0\1\67\77\0\1\212\57\0"+ - "\1\205\77\0\1\213\76\0\1\67\26\0"; + "\7\175\1\0\22\175\2\43\1\122\1\43\13\0\6\43"+ + "\6\0\1\43\1\176\1\100\1\176\1\43\1\176\1\43"+ + "\1\176\2\43\1\0\1\176\2\43\4\176\3\43\1\176"+ + "\6\43\1\176\2\43\1\122\1\43\13\0\6\43\7\0"+ + "\1\143\1\103\1\104\1\105\1\143\4\0\1\107\12\0"+ + "\1\104\43\0\1\145\3\0\1\145\63\0\1\145\2\0"+ + "\1\105\1\145\62\0\2\151\1\0\7\151\1\0\24\151"+ + "\1\0\1\151\13\0\6\151\6\0\2\43\1\100\7\43"+ + "\1\0\10\43\1\156\13\43\1\122\1\43\13\0\6\43"+ + "\6\0\2\43\1\100\7\43\1\0\12\43\1\177\11\43"+ + "\1\122\1\43\13\0\6\43\6\0\2\157\1\0\7\157"+ + "\1\0\24\157\1\0\1\157\13\0\6\157\6\0\2\161"+ + "\1\0\7\161\1\0\24\161\1\0\1\161\13\0\6\161"+ + "\23\0\1\200\105\0\1\201\64\0\1\202\40\0\1\203"+ + "\1\0\1\203\1\0\1\203\5\0\1\203\2\0\4\203"+ + "\3\0\1\203\6\0\1\203\55\0\1\204\66\0\1\205"+ + "\46\0\1\43\1\171\1\136\1\137\1\140\1\171\4\43"+ + "\1\107\12\43\1\137\11\43\1\122\1\43\13\0\6\43"+ + "\6\0\1\43\1\172\1\100\1\137\1\140\1\172\4\43"+ + "\1\0\12\43\1\137\11\43\1\122\1\43\13\0\6\43"+ + "\6\0\1\43\1\174\1\100\2\43\1\174\4\43\1\0"+ + "\24\43\1\122\1\43\13\0\6\43\6\0\1\43\1\174"+ + "\1\100\1\43\1\140\1\174\4\43\1\0\24\43\1\122"+ + "\1\43\13\0\6\43\16\0\1\206\72\0\1\207\105\0"+ + "\1\210\37\0\1\67\1\0\1\67\1\0\1\67\5\0"+ + "\1\67\2\0\4\67\3\0\1\67\6\0\1\67\56\0"+ + "\1\211\71\0\1\67\56\0\1\67\100\0\1\212\56\0"+ + "\1\205\100\0\1\213\76\0\1\67\25\0"; private static int [] zzUnpackTrans() { int [] result = new int[5040]; diff --git a/grammars/_ClojureLexer.flex b/grammars/_ClojureLexer.flex index f186562..8a315ab 100644 --- a/grammars/_ClojureLexer.flex +++ b/grammars/_ClojureLexer.flex @@ -39,7 +39,7 @@ NUMBER=[+-]? [0-9]+(\.[0-9]*)?([eE][+-]?[0-9]+)?M? HEXNUM=[+-]? "0x" [\da-fA-F]+ RADIX=[+-]? [0-9]{1,2}r[\da-zA-Z]+ RATIO=[+-]? [0-9]+"/"[0-9]+ -CHARACTER=\\([btrnf]|u[0-9]{4}|backspace|tab|newline|formfeed|return|space|.) +CHARACTER=\\([btrnf]|u[0-9a-fA-F]{4}|backspace|tab|newline|formfeed|return|space|.) SYM_START=[[\w<>$%&=*+\-!?_|]--#\d] | ".." SYM_CHAR="."? [\w<>$%&=*+\-!?_|'#] diff --git a/testData/lexer/Literals.txt b/testData/lexer/Literals.txt index 5f4e4e4..b7da90b 100644 --- a/testData/lexer/Literals.txt +++ b/testData/lexer/Literals.txt @@ -67,13 +67,9 @@ sym ('and') WHITE_SPACE (' ') char ('\return') WHITE_SPACE ('\n') -char ('\u') -number ('89') -sym ('AF') +char ('\u89AF') WHITE_SPACE (' ') -char ('\u') -number ('03') -sym ('A9') +char ('\u03A9') WHITE_SPACE (' ') char ('\o') number ('677')