[code-reflection] RFR: Support storing the code that builds the code model [v9]

Paul Sandoz psandoz at openjdk.org
Tue Feb 25 17:28:11 UTC 2025


On Mon, 24 Feb 2025 17:45:03 GMT, Mourad Abbay <mabbay at openjdk.org> wrote:

>> In this PR we allow the user to decide how to store the code model. The first option is `TEXT`, if this is selected, we store the textual representation of the code model. The second option is `CODE_BUILDR`, if this is selected, we store the code that builds the code model. All work done here is around the second option, because the first option is already supported.
>
> Mourad Abbay has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 11 additional commits since the last revision:
> 
>  - Merge branch 'code-reflection' into code-model-storage-option
>  - Add comment
>  - Support storing code that builds code model
>  - Reformat code
>  - Apply fixes from Maurizio
>  - Define parsing code in the enum CodeModelStorageOption
>  - Add a program to test storing code that builds code model
>  - Add JavaType -> Type mapping for Block.Parameter
>  - Support storing code that builds code model
>  - Make TEXT the default storage mechanism for code models
>  - ... and 1 more: https://git.openjdk.org/babylon/compare/1158cd39...f8327908

Getting compiler errors due to lack of imports:

> === Output from failing command(s) repeated here ===
> * For target jdk_modules_jdk.incubator.code__the.jdk.incubator.code_batch:
> /Users/sandoz/Projects/jdk/babylon/src/jdk.incubator.code/share/classes/jdk/incubator/code/Op.java:540: error: cannot find symbol
>                 opMethod = method.getDeclaringClass().getDeclaredMethod(opMethodName, OpFactory.class,
>                                                                                       ^
>   symbol:   class OpFactory
>   location: class Op
> /Users/sandoz/Projects/jdk/babylon/src/jdk.incubator.code/share/classes/jdk/incubator/code/Op.java:542: error: cannot find symbol
>                 args = new Object[] {ExtendedOp.FACTORY, CoreTypeFactory.CORE_TYPE_FACTORY};
>                                                          ^
>   symbol:   variable CoreTypeFactory
>   location: class Op
> 2 errors
> 

After fixing those locally i get many test failures.

-------------

PR Comment: https://git.openjdk.org/babylon/pull/305#issuecomment-2682737088


More information about the babylon-dev mailing list