[foreign-memaccess+abi] RFR: 8265760: Memory segments/addresses should have an isNative predicate

Maurizio Cimadamore mcimadamore at openjdk.java.net
Thu Apr 22 13:18:44 UTC 2021


This patch adds an `isNative` predicate to both `MemorySegment` and `MemoryAddress`. Note that, for segments, `isMapped` implies `isNative`.

It also moves all the methods from `MappedMemorySegments` back into `MemorySegment` (these methods will still throw if invoked on a segment that is not a mapped segment).

Some javadoc tweaking occurred here - MemorySegment now has a new section fully dedicated to mapped segments (note that now mapped segments are presented as a special class of native segments).

Also, in MemoryAddress, the concept of "native memory address" is introduced to talk about off-heap addresses, which simplifies some of the javadoc.

This way, the resulting API is tighter, and using mapped segments is slightly more direct.

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

Commit messages:
 - Add isNative accessors to both segments and addresses.

Changes: https://git.openjdk.java.net/panama-foreign/pull/514/files
 Webrev: https://webrevs.openjdk.java.net/?repo=panama-foreign&pr=514&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8265760
  Stats: 362 lines in 9 files changed: 165 ins; 168 del; 29 mod
  Patch: https://git.openjdk.java.net/panama-foreign/pull/514.diff
  Fetch: git fetch https://git.openjdk.java.net/panama-foreign pull/514/head:pull/514

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


More information about the panama-dev mailing list