-
Notifications
You must be signed in to change notification settings - Fork 334
Open
Labels
Description
This is an umbrella issue to track progress on refactoring Scala IR in runtime-parser to Java.
The initial PR that introduced the annotation processor is #11770
The initial issue is #11498
Motivation
- Ultimate goal is to replace all Scala code in
runtime-parserby Java - Remove boilerplate Scala code.
- The old
IRcase classes had to manually implement, e.g.,copy,duplicateandmapExpressionsmethods. - Tedious and error prone.
- The old
- All the repetitive code of methods like
copy,mapExpressions,children, etc. shall be generated by an annotation processor. - Will unblock further work on migration towards mini IR passes
- To continue with mini IR passes, we observed that having
withNewChildren(orsetNewChildren) method would be very useful, so that mini IR passes can traverse every IR node. - Once code for IR nodes is generated, implementing new methods on every IR node will be straightforward.
- To continue with mini IR passes, we observed that having
Work that has already been done
- Refactor Name Scala IR to Java #14244
- Refactor Definition Scala IR to Java #14252
- Refactor Method IR to Java #14086
- Refactor Foreign IR to Java #13943
- Refactor Function IR to Java #13037
- Refactor usage of Java IR types #13788
- Refactor Case IR to Java #13004
- Refactor more IR Scala case classes to Java #12474
- Replace more IR Scala case classes with Java interfaces #12211
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
📤 Backlog