Interface PaddingLayout

All Superinterfaces:
MemoryLayout

public sealed interface PaddingLayout extends MemoryLayout
A padding layout. A padding layout specifies the size of extra space which is typically not accessed by applications, and is typically used for aligning member layouts around word boundaries.
Implementation Requirements:
Implementing classes are immutable, thread-safe and value-based.
Since:
22
  • Method Details

    • withName

      PaddingLayout withName(String name)
      Returns a memory layout with the same characteristics as this layout, but with the given name.
      Specified by:
      withName in interface MemoryLayout
      Parameters:
      name - the layout name
      Returns:
      a memory layout with the same characteristics as this layout, but with the given name
      See Also:
    • withoutName

      PaddingLayout withoutName()
      Returns a memory layout with the same characteristics as this layout, but with no name.
      Specified by:
      withoutName in interface MemoryLayout
      Returns:
      a memory layout with the same characteristics as this layout, but with no name
      See Also:
    • withByteAlignment

      PaddingLayout withByteAlignment(long byteAlignment)
      Returns a memory layout with the same characteristics as this layout, but with the given alignment constraint (in bytes).
      Specified by:
      withByteAlignment in interface MemoryLayout
      Parameters:
      byteAlignment - the layout alignment constraint, expressed in bytes
      Returns:
      a memory layout with the same characteristics as this layout, but with the given alignment constraint (in bytes)
      Throws:
      IllegalArgumentException - if byteAlignment is not a power of two