Interface PaddingLayout
- All Superinterfaces:
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
-
Nested Class Summary
Nested classes/interfaces declared in interface java.lang.foreign.MemoryLayout
MemoryLayout.PathElement
-
Method Summary
Modifier and TypeMethodDescriptionwithByteAlignment
(long byteAlignment) Returns a memory layout with the same characteristics as this layout, but with the given alignment constraint (in bytes).Returns a memory layout with the same characteristics as this layout, but with the given name.Returns a memory layout with the same characteristics as this layout, but with no name.Methods declared in interface java.lang.foreign.MemoryLayout
arrayElementVarHandle, byteAlignment, byteOffset, byteOffsetHandle, byteSize, equals, hashCode, name, scale, scaleHandle, select, sliceHandle, toString, varHandle
-
Method Details
-
withName
Returns a memory layout with the same characteristics as this layout, but with the given name.- Specified by:
withName
in interfaceMemoryLayout
- 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 interfaceMemoryLayout
- Returns:
- a memory layout with the same characteristics as this layout, but with no name
- See Also:
-
withByteAlignment
Returns a memory layout with the same characteristics as this layout, but with the given alignment constraint (in bytes).- Specified by:
withByteAlignment
in interfaceMemoryLayout
- 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
- ifbyteAlignment
is not a power of two
-