@@ -625,12 +625,12 @@ public sealed interface MemoryLayout
625625 * (this layout), or an {@link IllegalArgumentException} is thrown. Note
626626 * that the alignment constraint of the root layout can be more strict
627627 * (but not less) than the alignment constraint of the selected value layout.</li>
628- * <li>The offset of the access operation (computed as above) must fall inside
629- * the spatial bounds of the accessed memory segment, or an
630- * {@link IndexOutOfBoundsException} is thrown. This is the case when
631- * {@code O + A <= S}, where {@code O } is the accessed offset (computed as above),
632- * {@code A} is the size of the selected layout and {@code S} is the size of the
633- * accessed memory segment .</li>
628+ * <li>The access operation must fall inside the spatial bounds of the accessed
629+ * memory segment, or an {@link IndexOutOfBoundsException} is thrown. This is the case
630+ * when {@code B + A <= S}, where {@code B} is the base offset (defined above),
631+ * {@code A} is the size of this layout and {@code S } is the size of the
632+ * accessed memory segment. Note that the size of this layout might be <em>bigger</em>
633+ * than the size of the accessed layout (e.g. when accessing a struct member) .</li>
634634 * <li>If the provided layout path has an open path element whose size is {@code S},
635635 * its corresponding trailing {@code long} coordinate value {@code I} must be
636636 * {@code 0 <= I < S}, or an {@link IndexOutOfBoundsException} is thrown.</li>
@@ -753,12 +753,12 @@ public sealed interface MemoryLayout
753753 * (this layout), or an {@link IllegalArgumentException} is thrown. Note
754754 * that the alignment constraint of the root layout can be more strict
755755 * (but not less) than the alignment constraint of the selected value layout.</li>
756- * <li>The offset of the access operation (computed as above) must fall inside
757- * the spatial bounds of the accessed memory segment, or an
758- * {@link IndexOutOfBoundsException} is thrown. This is the case when
759- * {@code O + A <= S}, where {@code O } is the accessed offset (computed as above),
760- * {@code A} is the size of the selected layout and {@code S} is the size of the
761- * accessed memory segment .</li>
756+ * <li>The access operation must fall inside the spatial bounds of the accessed
757+ * memory segment, or an {@link IndexOutOfBoundsException} is thrown. This is the case
758+ * when {@code B + A <= S}, where {@code B} is the base offset (defined above),
759+ * {@code A} is the size of this layout and {@code S } is the size of the
760+ * accessed memory segment. Note that the size of this layout might be <em>bigger</em>
761+ * than the size of the accessed layout (e.g. when accessing a struct member) .</li>
762762 * <li>If the provided layout path has an open path element whose size is {@code S},
763763 * its corresponding trailing {@code long} coordinate value {@code I} must be
764764 * {@code 0 <= I < S}, or an {@link IndexOutOfBoundsException} is thrown.</li>
@@ -822,12 +822,12 @@ public sealed interface MemoryLayout
822822 * (this layout), or an {@link IllegalArgumentException} will be issued. Note
823823 * that the alignment constraint of the root layout can be more strict
824824 * (but not less) than the alignment constraint of the selected layout.</li>
825- * <li>The start offset of the slicing operation (computed as above) must fall
826- * inside the spatial bounds of the accessed memory segment, or an
827- * {@link IndexOutOfBoundsException} is thrown. This is the case when
828- * {@code O + A <= S}, where {@code O } is the start offset of
829- * the slicing operation (computed as above), {@code A} is the size of the
830- * selected layout and {@code S} is the size of the accessed memory segment .</li>
825+ * <li>The slicing operation must fall inside the spatial bounds of the accessed
826+ * memory segment, or an {@link IndexOutOfBoundsException} is thrown. This is the case
827+ * when {@code B + A <= S}, where {@code B} is the base offset (defined above),
828+ * {@code A} is the size of this layout and {@code S } is the size of the
829+ * accessed memory segment. Note that the size of this layout might be <em>bigger</em>
830+ * than the size of the accessed layout (e.g. when accessing a struct member) .</li>
831831 * <li>If the provided layout path has an open path element whose size is {@code S},
832832 * its corresponding trailing {@code long} coordinate value {@code I} must be
833833 * {@code 0 <= I < S}, or an {@link IndexOutOfBoundsException} is thrown.</li>
0 commit comments