[foreign-jextract] RFR: 8249810: Jextract should generate parameter types with Addressable type

Jorn Vernee jvernee at openjdk.java.net
Tue Jul 21 21:34:59 UTC 2020


On Tue, 21 Jul 2020 16:48:47 GMT, Maurizio Cimadamore <mcimadamore at openjdk.org> wrote:

> This patch tweaks jextract so that all foreign functions wrappers use the new Addressable carrier type, as opposed to
> the more specific MemoryAddress type. This is useful, as now clients can call such functions with either an address or
> a segment, w/o any need to call `MemorySegment::address`.  The bulk of the changes are in the TypeTranslator visitor,
> which now has a parameter which says as to whether an addressable should be used. There are also some changes in the
> HeaderBuilder class, as we now need to call `Addressable::address` on any incoming addressable parameter (since the
> method handle generated by the linker expects a `MemoryAddress`).

Looks good. I wonder if we should regenerate the libclang bindings for jextract at some point after this as well.

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

Marked as reviewed by jvernee (Committer).

PR: https://git.openjdk.java.net/panama-foreign/pull/257


More information about the panama-dev mailing list