# Uses of Interface
java.lang.foreign.MemoryLayout

Packages that use MemoryLayoutPREVIEW
Package
Description
java.lang.foreign
Provides low-level access to memory and functions outside the Java runtime.

- ## Uses of MemoryLayoutPREVIEW in java.lang.foreign

  Subinterfaces of MemoryLayoutPREVIEW in java.lang.foreign
  Modifier and Type
  Interface
  Description
  `interface`
  `GroupLayoutPREVIEW`
  Preview.
  A compound layout that aggregates multiple member layouts.
  `interface`
  `PaddingLayoutPREVIEW`
  Preview.
  A padding layout.
  `interface`
  `SequenceLayoutPREVIEW`
  Preview.
  A compound layout that denotes a repetition of a given element layout.
  `interface`
  `StructLayoutPREVIEW`
  Preview.
  A group layout whose member layouts are laid out one after the other.
  `interface`
  `UnionLayoutPREVIEW`
  Preview.
  A group layout whose member layouts are laid out at the same starting offset.
  `interface`
  `ValueLayoutPREVIEW`
  Preview.
  A layout that models values of basic data types.
  `static interface`
  `ValueLayout.OfAddressPREVIEW`
  Preview.
  A value layout whose carrier is `MemorySegment.class`.
  `static interface`
  `ValueLayout.OfBooleanPREVIEW`
  Preview.
  A value layout whose carrier is `boolean.class`.
  `static interface`
  `ValueLayout.OfBytePREVIEW`
  Preview.
  A value layout whose carrier is `byte.class`.
  `static interface`
  `ValueLayout.OfCharPREVIEW`
  Preview.
  A value layout whose carrier is `char.class`.
  `static interface`
  `ValueLayout.OfDoublePREVIEW`
  Preview.
  A value layout whose carrier is `double.class`.
  `static interface`
  `ValueLayout.OfFloatPREVIEW`
  Preview.
  A value layout whose carrier is `float.class`.
  `static interface`
  `ValueLayout.OfIntPREVIEW`
  Preview.
  A value layout whose carrier is `int.class`.
  `static interface`
  `ValueLayout.OfLongPREVIEW`
  Preview.
  A value layout whose carrier is `long.class`.
  `static interface`
  `ValueLayout.OfShortPREVIEW`
  Preview.
  A value layout whose carrier is `short.class`.
  Methods in java.lang.foreign that return MemoryLayoutPREVIEW
  Modifier and Type
  Method
  Description
  `MemoryLayoutPREVIEW`
  SequenceLayout.`elementLayout()`
  Returns the element layout associated with this sequence layout.
  `default MemoryLayoutPREVIEW`
  MemoryLayout.`select(MemoryLayout.PathElementPREVIEW... elements)`
  Selects the layout from a path rooted in this layout.
  `MemoryLayoutPREVIEW`
  MemoryLayout.`withBitAlignment(long bitAlignment)`
  Returns a memory layout of the same type with the same size and name as this layout, but with the specified alignment constraint (in bits).
  `MemoryLayoutPREVIEW`
  MemoryLayout.`withName(String name)`
  Returns a memory layout of the same type with the same size and alignment constraint as this layout, but with the specified name.
  Methods in java.lang.foreign that return types with arguments of type MemoryLayoutPREVIEW
  Modifier and Type
  Method
  Description
  `List<MemoryLayoutPREVIEW>`
  FunctionDescriptor.`argumentLayouts()`
  Returns the argument layouts associated with this function descriptor (as an immutable list).
  `List<MemoryLayoutPREVIEW>`
  GroupLayout.`memberLayouts()`
  Returns the member layouts associated with this group.
  `Optional<MemoryLayoutPREVIEW>`
  FunctionDescriptor.`returnLayout()`
  Returns the return layout (if any) associated with this function descriptor.
  Methods in java.lang.foreign with parameters of type MemoryLayoutPREVIEW
  Modifier and Type
  Method
  Description
  `default MemorySegmentPREVIEW`
  SegmentAllocator.`allocate(MemoryLayoutPREVIEW layout)`
  Allocates a memory segment with the given layout.
  `default MemorySegmentPREVIEW`
  SegmentAllocator.`allocateArray(MemoryLayoutPREVIEW elementLayout, long count)`
  Allocates a memory segment with the given element layout and size.
  `static MemorySegmentPREVIEW`
  MemorySegment.`allocateNative(MemoryLayoutPREVIEW layout, SegmentScopePREVIEW scope)`
  Creates a native segment with the given layout and scope.
  `FunctionDescriptorPREVIEW`
  FunctionDescriptor.`appendArgumentLayouts(MemoryLayoutPREVIEW... addedLayouts)`
  Returns a function descriptor with the given argument layouts appended to the argument layout array of this function descriptor.
  `FunctionDescriptorPREVIEW`
  FunctionDescriptor.`changeReturnLayout(MemoryLayoutPREVIEW newReturn)`
  Returns a function descriptor with the given memory layout as the new return layout.
  `Stream<MemorySegmentPREVIEW>`
  MemorySegment.`elements(MemoryLayoutPREVIEW elementLayout)`
  Returns a sequential `Stream` over disjoint slices (whose size matches that of the specified layout) in this segment.
  `FunctionDescriptorPREVIEW`
  FunctionDescriptor.`insertArgumentLayouts(int index, MemoryLayoutPREVIEW... addedLayouts)`
  Returns a function descriptor with the given argument layouts inserted at the given index, into the argument layout array of this function descriptor.
  `static FunctionDescriptorPREVIEW`
  FunctionDescriptor.`of(MemoryLayoutPREVIEW resLayout, MemoryLayoutPREVIEW... argLayouts)`
  Creates a function descriptor with the given return and argument layouts.
  `static FunctionDescriptorPREVIEW`
  FunctionDescriptor.`ofVoid(MemoryLayoutPREVIEW... argLayouts)`
  Creates a function descriptor with the given argument layouts and no return layout.
  `static SequenceLayoutPREVIEW`
  MemoryLayout.`sequenceLayout(long elementCount, MemoryLayoutPREVIEW elementLayout)`
  Creates a sequence layout with the given element layout and element count.
  `static SequenceLayoutPREVIEW`
  MemoryLayout.`sequenceLayout(MemoryLayoutPREVIEW elementLayout)`
  Creates a sequence layout with the given element layout and the maximum element count such that it does not overflow a `long`.
  `void`
  VaList.`skip(MemoryLayoutPREVIEW... layouts)`
  Skips a number of elements with the given memory layouts, and advances this variable argument list's position.
  `Spliterator<MemorySegmentPREVIEW>`
  MemorySegment.`spliterator(MemoryLayoutPREVIEW elementLayout)`
  Returns a spliterator for this memory segment.
  `static StructLayoutPREVIEW`
  MemoryLayout.`structLayout(MemoryLayoutPREVIEW... elements)`
  Creates a struct layout with the given member layouts.
  `static UnionLayoutPREVIEW`
  MemoryLayout.`unionLayout(MemoryLayoutPREVIEW... elements)`
  Creates a union layout with the given member layouts.