RFR (15) 8248011: Improve javadoc of Foreign Memory Access API
Paul Sandoz
paul.sandoz at oracle.com
Mon Jun 22 18:22:01 UTC 2020
Looks good, some very minor comment (no need for another round).
MemoryLayout.java
—
146 * That is, the above declaration is identical to the following, more verbose one:
147 * <blockquote><pre>{@code
148 MemoryLayout taggedValuesWithHole = MemoryLayout.ofSequence(5,
149 MemoryLayout.ofStruct(
150 MemoryLayout.ofPaddingBits(8, ByteOrder.NATIVE_ORDER).withName("kind").
151 MemoryLayout.ofPaddingBits(32),
152 MemoryLayout.ofPaddingBits(32)
153 ));
Line 150 should be the following?
MemoryLayout.ofValueBits(8, ByteOrder.NATIVE_ORDER).withName("kind"),
MemorySegment.java
—
156 * <blockquote><pre>{@code
157 MemorySegment segment = ...
158 SequenceLayout SEQUENCE_LAYOUT = MemoryLayout.ofSequence(1024, MemoryLayouts.JAVA_INT);
159 VarHandle VH_int = SEQUENCE_LAYOUT.elementLayout().varHandle(int.class);
160 int sum = StreamSupport.stream(MemorySegment.spliterator(segment, SEQUENCE_LAYOUT), true)
161 .mapToInt(s -> (int)VH_int.get(s.baseAddress()))
162 .sum();
163 * }</pre></blockquote>
Indent lines 161 and 162?
package-info.java
—
41 * <pre>{@code
42 static final VarHandle intHandle = MemoryHandles.varHandle(int.class, ByteOrder.nativeOrder());
43
44 try (MemorySegment segment = MemorySegment.allocateNative(10 * 4)) {
45 MemoryAddress base = segment.baseAddress();
46 for (long i = 0 ; i < 10 ; i++) {
47 intHandle.set(base.addOffset(i * 4), (int)i);
48 }
49 }
50 * }</pre>
Alignment of ‘}’ in line 49 off by 1 space (too many).
Paul.
> On Jun 22, 2020, at 7:41 AM, Maurizio Cimadamore <maurizio.cimadamore at oracle.com> wrote:
>
> Hi,
> this is a patch fix address several javadoc issues in the foreign memory API, following some internal reviews (mostly from Brian, thanks!).
>
> The changes are aimed at reordering sections in the doc so that more advanced concepts are exposed last, and also to fix various issues in code samples (especially around MemoryLayout).
>
> Since I was there I also took the opportunity of dropping a now-unused method in MemoryAddressImpl (copy).
>
> Webrev:
> http://cr.openjdk.java.net/~mcimadamore/8248011/
>
> Cheers
> Maurizio
>
>
More information about the core-libs-dev
mailing list