RFR: 7903674: jextract should ignore non-enum constants inside enum [v2]
Maurizio Cimadamore
mcimadamore at openjdk.org
Tue Feb 20 12:30:08 UTC 2024
On Tue, 20 Feb 2024 07:41:11 GMT, Athijegannathan Sundararajan <sundar at openjdk.org> wrote:
>> * checking cursor kind of child cursor to be CursorKind.EnumConstantDecl.
>> * Piggybacking to fix similar check of record child element kinds to be CursorKind.FieldDecl.
>> * Added null check for createTree return value in collectNestedTypes method as well.
>> * In addition to jextract tests, I ran all samples on Mac OS. All fine with this change. Also, ran jextract script for Mac OS from https://github.com/manuelbl/JavaDoesUSB.git.
>
> Athijegannathan Sundararajan has updated the pull request incrementally with one additional commit since the last revision:
>
> moved nested 'if' inside 'else' as 'else if'
src/main/java/org/openjdk/jextract/impl/TreeMaker.java line 476:
> 474: collectNestedTypes(m, nestedTypes, ignoreNestedParams);
> 475: } else {
> 476: Declaration decl = createTree(m);
note that the output of this method is only used by `withNestedTypes` which already filters the output, looking for scoped declarations. E.g. it has `d instanceof Scoped` which will fail if the decl is `null`. So I don't think this adds much, but perhaps it could be slightly cleaner to filter out nulls as you did.
-------------
PR Review Comment: https://git.openjdk.org/jextract/pull/221#discussion_r1495735530
More information about the jextract-dev
mailing list