SequenceLayout — 시퀀스 레이아웃
SequenceLayout — 시퀀스 레이아웃
SequenceLayout는 주어진 요소 레이아웃(element layout)의 균질한 반복을 나타내는 복합 레이아웃입니다. 반복 횟수를 시퀀스 레이아웃의 요소 수(element count)라고 합니다.
본문
시퀀스 레이아웃은 시퀀스 레이아웃의 요소 레이아웃이 요소 수와 같은 횟수만큼 반복되는 구조체 레이아웃으로 생각할 수 있습니다. 즉, 다음 레이아웃은
MemoryLayout.sequenceLayout(3, ValueLayout.JAVA_INT.withOrder(ByteOrder.BIG_ENDIAN));
다음과 같은 형태입니다.
MemoryLayout.structLayout(
ValueLayout.JAVA_INT.withOrder(ByteOrder.BIG_ENDIAN),
ValueLayout.JAVA_INT.withOrder(ByteOrder.BIG_ENDIAN),
ValueLayout.JAVA_INT.withOrder(ByteOrder.BIG_ENDIAN));
public sealed interface SequenceLayout extends MemoryLayout
주요 메서드
MemoryLayout elementLayout()
long elementCount()
SequenceLayout withElementCount(long elementCount)
SequenceLayout reshape(long... elementCounts)
SequenceLayout flatten()
SequenceLayout withName(String name)
SequenceLayout withByteAlignment(long byteAlignment)
elementLayout()은 반복되는 요소 레이아웃을,elementCount()는 요소 수를 반환합니다.withElementCount는 요소 수를 바꾼 새 레이아웃을 만듭니다.reshape는 요소 수를 재배열하고,flatten은 중첩된 시퀀스를 펼칩니다.