Interface CompoundElement<E extends ClassFileElement>
- Параметры типа:
E— тип элемента-члена
- Все суперинтерфейсы:
ClassFileElement, Iterable<E>
- Все известные подинтерфейсы:
ClassModel, CodeAttribute, CodeModel, FieldModel, MethodModel
public sealed interface CompoundElement<E extends ClassFileElement> extends ClassFileElement, Iterable<E> permits ClassModel, CodeModel, FieldModel, MethodModel (not exhaustive)
class, которую можно рассматривать как композицию составляющих её структур-членов. CompoundElement позволяет пользователям обходить эти элементы-члены с помощью forEach(Consumer) или elementStream() либо буферизовать элементы, полученные при обходе, с помощью iterator() или elementList(). Если не указано иное, во время обхода будут представлены все существующие в этом элементе элементы-члены совместимого типа. Для некоторых элементов-членов указано, что они могут встречаться в этом элементе не более одного раза; если такие элементы представлены несколько раз, достоверным является последнее вхождение, а все предыдущие следует игнорировать.
CompoundElement можно создавать с помощью ClassFileBuilder. ClassFileBuilder.transform(CompoundElement, ClassFileTransform) предоставляет простой способ создать новую структуру, выборочно обрабатывая исходные структуры-члены и передавая результаты построителю.
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
default List |
elementList() |
Возвращает List, содержащий все элементы-члены этого составного элемента. |
default Stream |
elementStream() |
Возвращает Stream, содержащий все элементы-члены этого составного элемента. |
void |
forEach |
Вызывает переданный обработчик для каждого элемента-члена этого составного элемента. |
default Iterator |
iterator() |
Возвращает Iterator, описывающий все элементы-члены этого составного элемента. |
default String |
toDebugString() |
Возвращает текстовое представление составного элемента и его содержимого для отладки. |
Методы, объявленные в интерфейсе Iterable
spliterator | Модификатор и тип | Метод | Описание |
|---|---|---|
default Spliterator |
spliterator() |
Создаёт Spliterator для элементов, описанных этим Iterable. |
Подробное описание методов
forEach
void forEach(Consumer<? super E> consumer)
- Переопределяет:
-
forEachв интерфейсеIterable<E extends ClassFileElement> - Параметры:
-
consumer— обработчик
iterator
elementStream
elementList
toDebugString
default String toDebugString()
- Возвращает:
- текстовое представление составного элемента и его содержимого для отладки
© 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.