-
Notifications
You must be signed in to change notification settings - Fork 44
Recoder must be removed #3715
Copy link
Copy link
Closed
Labels
🐞 Bug🚀 PerformanceBreaks APIFeatureNew feature or requestNew feature or requestJML (Semantics)JML ParserJavaPull requests that update Java codePull requests that update Java codeJava ParserJavaJMLParserhelp wantedExtra attention is neededExtra attention is needed🛠 MaintenanceCode quality and related things w/o functional changesCode quality and related things w/o functional changes
Milestone
Metadata
Metadata
Assignees
Labels
🐞 Bug🚀 PerformanceBreaks APIFeatureNew feature or requestNew feature or requestJML (Semantics)JML ParserJavaPull requests that update Java codePull requests that update Java codeJava ParserJavaJMLParserhelp wantedExtra attention is neededExtra attention is needed🛠 MaintenanceCode quality and related things w/o functional changesCode quality and related things w/o functional changes
The Recoder framework is out-of-date and need to be replaced.
The solutions:
Use a Java compiler (Eclipse, etc..) and exploit the compiler to generate a proper AST. Name resolution for JML&Co needs to be done by down-compilation to Java. The same goes for extra KeY-Java constructs like method frames, loop scopes, ...
The Eclipse compiler comes in a simple distributable form. But the Javac compiler could be accessed via the Tool API when a JDK is used with limited information.
Extending Recoder: Adapt Recoder to new Java constructs.
Switch to the JavaParser project.
We did (3) in #3120. The code lies here https://github.com/wadoon/key-javaparser.