jflex-1.7.0-SNAPSHOT.jar: morph ZZ_CMAP to multi-level table
authorGregory.Shrago <gregory.shrago@jetbrains.com>
Fri, 27 May 2016 06:49:56 +0000 (09:49 +0300)
committerGregory.Shrago <gregory.shrago@jetbrains.com>
Fri, 27 May 2016 15:38:57 +0000 (18:38 +0300)
plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/lexer/groovy.skeleton
tools/lexer/CHANGES
tools/lexer/idea-flex.skeleton
tools/lexer/jflex-1.7.0-SNAPSHOT.jar

index 83fa26c4f2650e2310664f564eb8bf94185be14a..607494bd61bb925d0a4f8afc843950c836bd6526 100644 (file)
     int zzMarkedPosL;
     int zzEndReadL = zzEndRead;
     CharSequence zzBufferL = zzBuffer;
-    char [] zzCMapL = ZZ_CMAP;
 
 --- local declarations
 
index 3bc29c605ad48acd699d4eef14cc983a18090784..d853424c5551ca54608109aef03fe8c17e9e6df0 100644 (file)
@@ -8,4 +8,6 @@ https://github.com/jflex-de/jflex/tree/de2312d6891de7fdf2752ad8e0a45983202ad5e0
 "Return exit code 0 for --{help,version,info}" committed on Feb 29 by lsf37
 
 1. Emitter.java: zzBufferL is treated as CharSequence instead of char[]
-2. Emitter.java: try using reduced ZZ_CMAP if maxCodePoint is greater than 0xffff
\ No newline at end of file
+2. Emitter.java: reworked ZZ_CMAP to an optimized multi-level table (see java.lang.CharacterDataXX)
+   For this purpose EmitterCM.java is introduced to resemble a variant of
+   generatecharacter/GenerateCharacter.java from http://hg.openjdk.java.net tailored to our needs.
\ No newline at end of file
index f3127cd8e8be5b6954940ad1fc7773ab6308f6fd..2f2563672f9a46a3ecbc7f520e5521f009aa4328 100644 (file)
     int zzMarkedPosL;
     int zzEndReadL = zzEndRead;
     CharSequence zzBufferL = zzBuffer;
-    char [] zzCMapL = ZZ_CMAP;
 
 --- local declarations
 
index 4f301defd919d2315db548d5e918d668e52600bf..15cd90feaa5816cff8382da2684d184712bfb7ff 100644 (file)
Binary files a/tools/lexer/jflex-1.7.0-SNAPSHOT.jar and b/tools/lexer/jflex-1.7.0-SNAPSHOT.jar differ