Spec-Zone.ru › OpenJDK 24

Интерфейс GroupLayout

Все суперинтерфейсы:
MemoryLayout
Все известные дочерние интерфейсы:
StructLayout, UnionLayout
public sealed interface GroupLayout extends MemoryLayout permits StructLayout, UnionLayout
Составной макет, который является агрегацией нескольких разнородных членских макетов. Существует два способа объединения членских макетов: если членские макеты расположены один за другим, результирующий групповой макет представляет собой структурный макет; в противном случае, если все членские макеты расположены с одинаковым начальным смещением, результирующий групповой макет представляет собой объединение макетов.
Требования к реализации:
Этот класс неизменяемый, потокобезопасный и базирующийся на значениях.
Граф иерархии класса Sealed:
Sealed class hierarchy graph for GroupLayoutSealed class hierarchy graph for GroupLayout
С:
22

Краткое описание вложенных классов

Вложенные классы/интерфейсы, объявленные в интерфейсе java.lang.foreign.MemoryLayout

MemoryLayout.PathElement

Краткое описание методов

Модификатор и тип Метод Описание
List<MemoryLayout> memberLayouts()
Возвращает членские макеты этого группового макета.
GroupLayout withByteAlignment(long byteAlignment)
Возвращает макет памяти с теми же характеристиками, что и этот макет, но с заданным ограничением выравнивания (в байтах).
GroupLayout withName(String name)
Возвращает макет памяти с теми же характеристиками, что и этот макет, но с заданным именем.
GroupLayout withoutName()
Возвращает макет памяти с теми же характеристиками, что и этот макет, но без имени.

Методы, объявленные в интерфейсе java.lang.foreign.MemoryLayout

arrayElementVarHandle, byteAlignment, byteOffset, byteOffsetHandle, byteSize, equals, hashCode, name, scale, scaleHandle, select, sliceHandle, toString, varHandle

Подробное описание методов

memberLayouts

List<MemoryLayout> memberLayouts()
Возвращает членские макеты этого группового макета.
Примечание API:
Порядок возврата членских макетов совпадает с порядком, в котором членские макеты были переданы одному из методов фабрики групповых макетов (см. MemoryLayout.structLayout(MemoryLayout...) и MemoryLayout.unionLayout(MemoryLayout...)).
Возвращает:
членские макеты этого группового макета

withName

GroupLayout withName(String name)
Возвращает макет памяти с теми же характеристиками, что и этот макет, но с заданным именем.
Задано:
withName в интерфейсе MemoryLayout
Параметры:
name - имя макета
Возвращает:
макет памяти с теми же характеристиками, что и этот макет, но с заданным именем
См. также:
  • MemoryLayout.name()

withoutName

GroupLayout withoutName()
Возвращает макет памяти с теми же характеристиками, что и этот макет, но без имени.
Задано:
withoutName в интерфейсе MemoryLayout
Возвращает:
макет памяти с теми же характеристиками, что и этот макет, но без имени
См. также:
  • MemoryLayout.name()

withByteAlignment

GroupLayout withByteAlignment(long byteAlignment)
Возвращает макет памяти с теми же характеристиками, что и этот макет, но с заданным ограничением выравнивания (в байтах).
Задано:
withByteAlignment в интерфейсе MemoryLayout
Параметры:
byteAlignment - ограничение выравнивания макета, выраженное в байтах
Возвращает:
макет памяти с теми же характеристиками, что и этот макет, но с заданным ограничением выравнивания (в байтах)
Выбрасывает:
IllegalArgumentException - если byteAlignment не является степенью двойки
IllegalArgumentException - если byteAlignment меньше M, где M - максимальное ограничение выравнивания в любом из членских макетов, связанных с этим групповым макетом

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/lang/foreign/GroupLayout.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API