Интерфейс 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
Подробное описание методов
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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/classfile/CompoundElement.html