Module java.base
Interface CompoundElement<E extends ClassFileElementPREVIEW>
- Type Parameters:
E
- the element type
- All Superinterfaces:
ClassFileElementPREVIEW
,Iterable<E>
- All Known Subinterfaces:
ClassModelPREVIEW
,CodeAttributePREVIEW
,CodeModelPREVIEW
,FieldModelPREVIEW
,MethodModelPREVIEW
public sealed interface CompoundElement<E extends ClassFileElementPREVIEW>
extends ClassFileElementPREVIEW, Iterable<E>
permits ClassModelPREVIEW, CodeModelPREVIEW, FieldModelPREVIEW, MethodModelPREVIEW (not exhaustive)
CompoundElement
is a preview API of the Java platform.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.
A
ClassFileElement
PREVIEW that has complex structure defined in terms of
other classfile elements, such as a method, field, method body, or entire
class. When encountering a CompoundElementPREVIEW, clients have the
option to treat the element as a single entity (e.g., an entire method)
or to traverse the contents of that element with the methods in this class
(e.g., elements()
, forEachElement(Consumer)
, etc.)-
Method Summary
Modifier and TypeMethodDescriptionReturns anList
containing all the elements contained in this compound element.elements()
Returns anIterable
describing all the elements contained in this compound element.Returns aStream
containing all the elements contained in this compound element.void
forEachElement
(Consumer<E> consumer) Invoke the provided handler with each element contained in this compound elementiterator()
Returns anIterator
describing all the elements contained in this compound element.Methods declared in interface java.lang.Iterable
forEach, spliterator
-
Method Details
-
forEachElement
-
elements
-
iterator
-
elementStream
-
elementList
-
CompoundElement
when preview features are enabled.