⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 javaccreleasenotes.html

📁 This a JavaCC documentation.
💻 HTML
📖 第 1 页 / 共 2 页
字号:
set.-------------------------------------------------------------------Fixed a bug where the name of the JJTree state file was being used inthe declaration of the field.-------------------------------------------------------------------Updated the performance page to demonstrate how JavaCC performancehas improved since Version 0.5.-------------------------------------------------------------------*******************************************************************-------------------------------------------------------------------MODIFICATIONS IN VERSION 0.7pre7 (as compared to version 0.7pre6)-------------------------------------------------------------------Added an option CACHE_TOKENS with a default value of false.  Youcan generate slightly faster and (it so happens) more compactparsers if you set CACHE_TOKENS to true.-------------------------------------------------------------------Improved time and space requirements as compared to earlierversions - regardless of the setting of CACHE_TOKENS.Performance has improved roughly 10% (maybe even a little more).Space requirements have reduced approximately 30%.It is now possible to generate a Java parser whose class file isonly 28K in size.  To do this, run JavaCC on Java1.1noLA.jj withoptions ERROR_REPORTING=false and CACHE_TOKENS=true.And over the next few months, there is still places where spaceand time can be trimmed!-------------------------------------------------------------------The token_mask arrays are completely gone and replaced by bitvectors.-------------------------------------------------------------------Nested switch statements have been flattened.-------------------------------------------------------------------Fixed a bug in the outputting of code to generate a method    jjCheckNAddStates(int i)calls to which are generated, but not the method.-------------------------------------------------------------------Generating the `static' keyword for the backup method of theUCode*.java files when STATIC flag is set.-------------------------------------------------------------------*******************************************************************-------------------------------------------------------------------MODIFICATIONS IN VERSION 0.7pre6 (as compared to version 0.7pre5)-------------------------------------------------------------------Extended the generated CharStream classes with a method to adjust theline and column numbers for the beginning of a token.  Look at the C++grammar in the distribution to see an example usage.-------------------------------------------------------------------Fixed the JavaCC front-end so that error messages are given with linenumbers relative to the original .jjt file if the .jj file is generatedby pre-processing using jjtree.-------------------------------------------------------------------Removed support for old deprecated features:. IGNORE_IN_BNF can no longer be used.  Until this version, you  would get a deprecated warning message if you did use it.. The extra {} in TOKEN specifications can no longer be used.  Until  this version, you would get a deprecated warning message if your  did use it.-------------------------------------------------------------------ParseError is no longer supported.  It is now ParseException.  Pleasedelete the existing generated files for ParseError and ParseException.The right ParseException will automatically get regenerated.-------------------------------------------------------------------Completed step 1 in getting rid of the token mask arrays.  Thisoccupies space and is also somewhat inefficient.  Essentially,replaced all "if" statements that test a token mask entry withfaster "switch" statements.  The token mask array still exist forerror reporting - but they will be removed in the next step (inthe next release).  As a result, we have noticed improved parserspeeds (up to 10% for the Java grammar).As a consequence of doing step 1, but not step 2, the size of thegenerated parser has increased a small amount.  When step 2 iscompleted, the size of the generated parser will go down to be evensmaller than what it was before.-------------------------------------------------------------------Cache tokens one step ahead during parsing for performance reasons.-------------------------------------------------------------------Made the static token mask fields "final".  Note that the tokenmask arrays will go away in the next release.-------------------------------------------------------------------The Java 1.1 grammar was corrected to allow interfaces nested withinblocks.  The JavaCC grammar was corrected to fix a bug in itshandling of the ">>>=" operator.-------------------------------------------------------------------Fixed a bug in the optimizations of the lexical analyzer.-------------------------------------------------------------------Many changes have been made to JJTree.  See the JJTree releasenotes for more information.-------------------------------------------------------------------*******************************************************************-------------------------------------------------------------------MODIFICATIONS IN VERSION 0.7pre5 (as compared to version 0.7pre4)-------------------------------------------------------------------Fixed a bug with TOKEN_MGR_DECLS introduced in 0.7pre4.-------------------------------------------------------------------Enhanced JavaCC input grammar to allow JavaCC reserved words inJava code (such as actions).  This too was disallowed in 0.7pre4only and has been rectified.-------------------------------------------------------------------The JavaCC+JJTree grammar is now being offered to our users.  Youcan find it in the examples directory.-------------------------------------------------------------------Fixed an array index out of bounds bug in the parser - that sometimescan happen when a non-terminal can expand to more than 100 othernon-terminals.-------------------------------------------------------------------Fixed a bug in generating parsers with USER_CHAR_STREAM set to true.-------------------------------------------------------------------Created an alternate Java 1.1 grammar in which lookaheads have beenmodified to minimize the space requirements of the generatedparser.  See the JavaGrammars directory under the examples directory.-------------------------------------------------------------------Provided instructions on how you can make your own grammars spaceefficient (until JavaCC is improved to do this).  See theJavaGrammars directory under the examples directory.-------------------------------------------------------------------Updated all examples to make them current.  Some examples had becomeout of date due to newer versions of JavaCC.-------------------------------------------------------------------Updated the VHDL example - Chris Grimm made a fresh contribution.This seems to be a real product quality example now.-------------------------------------------------------------------Fixed bugs in the Obfuscator example that has started being usedfor real obfuscation by some users.-------------------------------------------------------------------The token manager class is non-final (this was a bug).-------------------------------------------------------------------Many changes have been made to JJTree.  See the JJTree releasenotes for more information.-------------------------------------------------------------------Fixed all token manager optimization bugs that we know about.-------------------------------------------------------------------Fixed all UNICODE lexing bugs that we know about.-------------------------------------------------------------------Fixed an array index out of bounds bug in the token manager.-------------------------------------------------------------------*******************************************************************-------------------------------------------------------------------MODIFICATIONS IN VERSION 0.7pre4 (as compared to version 0.7pre3)-------------------------------------------------------------------The only significant change for this version is that we incorporatedthe Java grammar into the JavaCC grammar.  The JavaCC front end istherefore able to parse the entire grammar file intelligently ratherthan simple ignore the actions.-------------------------------------------------------------------*******************************************************************-------------------------------------------------------------------MODIFICATIONS IN VERSION 0.7pre3 (as compared to version 0.7pre2)-------------------------------------------------------------------WE HAVE NOT ADDED ANY MAJOR FEATURES TO JAVACC FOR THIS PRERELEASE.WE'VE FOCUSED MAINLY ON BUG FIXES.  BUT HERE IS WHAT HAS CHANGED:-------------------------------------------------------------------Fixed the JavaCC license agreement to allow redistributions of examplegrammars.-------------------------------------------------------------------Fixed a couple of bugs in the JavaCC grammar.-------------------------------------------------------------------Fixed an obscure bug that caused spurious '\r's to be generatedon Windows machines.-------------------------------------------------------------------Changed the generated *CharStream classes to take advantage of theSTATIC flag setting.  With this (like the token manager and parser)the *CharStream class also will have all the methods and variables tobe static with STATIC flag.-------------------------------------------------------------------A new option OPTIMIZE_TOKEN_MANAGER is introduced. It defaults totrue.  When this option is set, optimizations for the TokenManager, interms of size *and* time are performed.This option is automatically set to false if DEBUG_TOKEN_MANAGER isset to true.The new option OPTIMIZE_TOKEN_MANAGER might do some unsafeoptimization that can cause your token manager not to compile or runproperly. While we don't expect this to happen that much, in case ithappens, just turn off the option so that those optimizations will nothappen and you can continue working. Also, if this happens, pleasesend us the grammar so we can analyze the problem and fix JavaCC.-------------------------------------------------------------------A String-valued option OUTPUT_DIRECTORY is implemented. This can beused to instruct JavaCC to generate all the code files in a particulardirectory.  By default, this is set to user.dir.-------------------------------------------------------------------Fixed a minor bug (in 0.7pre2) in that the specialToken field was notbeing set before a lexical action for a TOKEN type reg. exp.-------------------------------------------------------------------Added a toString method to the Token class to return the image.-------------------------------------------------------------------*******************************************************************-------------------------------------------------------------------MODIFICATIONS IN VERSION 0.7pre2 (as compared to version 0.7pre1)-------------------------------------------------------------------AS USUAL, KEEP IN MIND THAT THIS IS A PRERELEASE THAT WE HAVE NOTTESTED EXTENSIVELY.  THERE ARE A FEW KNOWN BUGS THAT ARE STILL PRESENTIN THIS VERSION.  QUALITY CONTROL FOR PRERELEASES ARE SIGNIFICANTLYLOWER THAN STABLE RELEASES - I.E., WE DON'T MIND THE PRESENCE OF BUGSTHAT WE WOULD FEEL EMBARRASSED ABOUT IN STABLE RELEASES.-------------------------------------------------------------------Main feature release for 0.7pre2 is a completely redone JJTree.  Itnow bootstraps itself.  See the JJTree release notes for moreinformation.-------------------------------------------------------------------Error recovery constructs have been modified a bit from 0.7pre1.  Theparser methods now throw only ParseException by default.  You can nowspecify a "throws" clause with your non-terminals to add otherexceptions to this list explicitly.  Please see the help web page at:   http://www.suntest.com/JavaCCBeta/newerrorhandling.htmlfor complete information on error recovery.-------------------------------------------------------------------A new Java grammar improved for performance in the presence of verycomplex expressions is now included.  This is NewJava1.1.jj.-------------------------------------------------------------------More optimizations for the size of the token manager's java and classfiles.  The generated .java files are about 10-15% smaller that0.7pre1 (and 40-45%) smaller compared to 0.6. The class files (with-O) are about 20% smaller compared to 0.6.-------------------------------------------------------------------The parser size has been decreased.  The current optimizations affectgrammars that have small amounts of non-1 lookaheads.  For example thegenerated code for the Java grammar has now reduced by 10%.-------------------------------------------------------------------Extended the Token class to introduce a new factory function thattakes the token kind and returns a new Token object. This is done tofacilitate creating Objects of subclasses of Token based on the kind.Look at the generated file Token.java for more details.-------------------------------------------------------------------The restriction on the input size (to be < 2 gbytes) for the tokenmanager is gone.  Now the lexer can tokenize any size input (nolimit).-------------------------------------------------------------------Removed all the references to System.out.println in the *CharStreamclasses.  Now all these are thrown as Error objects.-------------------------------------------------------------------Fixed a very old problem with giving input from System.in. Previouslyfor the EOF, you needed to give  or 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -