In the pretty printer, a direct "write" call has broken internal position counting. This is now fixed, and the overwrite internal positions options now works fine for start positions. This is important for graphical frontend that can now find the exact start position of a token after displaying the pretty printed output.
[*] recoder.java.PrettyPrinter
Added a method for Java compile time control flow analysis to SourceInfo and some auxiliaries to StatementKit, including the very convenient
ControlFlowWalker.
This allows to find out whether the end of a void method or a constructor or initializer is reachable: it is not admissible to insert statements that cannot be reached.
[*] recoder.service.SourceInfo
[*] recoder.service.DefaultSourceInfo
[*] recoder.kit.StatementKit
Added a new interface for ProgramElementWalkers, now implemented by AbstractTreeWalker.
[+] recoder.convenience.ProgramElementWalker
[*] recoder.convenience.AbstractTreeWalker
Minor patches in XReferenceHTMLGenerator: creates output directory when needed; underlining was broken for "new"; references are now contained in
only one "X.html" file and entries are joined globally - the total size is decreased somewhat.
[*] doc/examples/XReferenceHTMLGenerator.java
Added a starters' tour to the home page, linking to example sources and generated html input and output pages.
[*] doc/index.html
[+] doc/examples/converter-html/*
[+] doc/examples/converter-obfuscated-html/*
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Legend:
[+] added
[-] removed
[*] updated
[>] relocated
=== very important changes ===
In the pretty printer, a direct "write" call has broken internal position counting. This is now fixed, and the overwrite internal positions options now works fine for start positions. This is important for graphical frontend that can now find the exact start position of a token after displaying the pretty printed output.
[*] recoder.java.PrettyPrinter
Added a method for Java compile time control flow analysis to SourceInfo and some auxiliaries to StatementKit, including the very convenient
ControlFlowWalker.
This allows to find out whether the end of a void method or a constructor or initializer is reachable: it is not admissible to insert statements that cannot be reached.
[*] recoder.service.SourceInfo
[*] recoder.service.DefaultSourceInfo
[*] recoder.kit.StatementKit
--- quite important changes ---
Refactored PrettyPrinter interface: removed unnecessary internal functions thereby reducing recursion depth, renamed printInternalIndentation to printElementIndentation, folded duplicated code.
[*] recoder.java.PrettyPrinter
--- negligible changes ---
Added a new interface for ProgramElementWalkers, now implemented by AbstractTreeWalker.
[+] recoder.convenience.ProgramElementWalker
[*] recoder.convenience.AbstractTreeWalker
Minor patches in XReferenceHTMLGenerator: creates output directory when needed; underlining was broken for "new"; references are now contained in
only one "X.html" file and entries are joined globally - the total size is decreased somewhat.
[*] doc/examples/XReferenceHTMLGenerator.java
Added a starters' tour to the home page, linking to example sources and generated html input and output pages.
[*] doc/index.html
[+] doc/examples/converter-html/*
[+] doc/examples/converter-obfuscated-html/*
I do not plan to add more to the core before 0.71;
if there are no severe problems reported during the next week, I will finish the 0.71 release.