[foreign] RFR: switch to toplevel annotations
Sundararajan Athijegannathan
sundararajan.athijegannathan at oracle.com
Fri May 25 09:17:40 UTC 2018
Looks good.
-Sundar
On 24/05/18, 11:41 PM, Maurizio Cimadamore wrote:
> Hi,
> this patch completes the migration towards the annotation model
> described in [1].
>
> More specifically, @NativeStruct, now contains a full layout
> description, with layout annotation which point to Java accessors.
> @NativeHeader contains a set of declarations of the kind
> 'symbol=descriptor', where 'symbol' is the linker name of the given
> symbol, whereas descriptor can be either a function descriptor or a
> layout.
>
> I did some refactoring of the binder code, which I think helped in
> making it even clearer, I hope.
>
> Note that now the binder doesn't depend on @NativeType, nor @Offset,
> but I left those in place because we have some jextract tests
> depending on them (jextract still needs to be fixed to generate the
> new stuff).
>
> In order to compute offset of fields, I added a new LayoutPaths helper
> class, which allows the binder to get a layout path given a predicate
> expression and a layout. This is useful to get a path to a given
> struct field, which then gives you info about things such as offset
> (and, maybe in the future, alignment).
>
> Of course, many tests have to be updated; since I touched the dreaded
> UnixSystem test, it'd be better to give it a try on MacOS.
>
> Webrev:
>
> http://cr.openjdk.java.net/~mcimadamore/panama/toplevel_annos/
>
> Cheers
> Maurizio
>
> [1] -
> http://cr.openjdk.java.net/~mcimadamore/panama/panama-binder-v3.html
>
>
More information about the panama-dev
mailing list