Interface MethodModel
- All Superinterfaces:
AttributedElement, ClassElement, ClassFileElement, CompoundElement<MethodElement>, Iterable<MethodElement>
public sealed interface MethodModel
extends CompoundElement<MethodElement>, AttributedElement, ClassElement
Models a method. A method can be viewed as a composition of
MethodElements, or by random access via accessor
methods if only specific parts of the method is needed.
Methods can be obtained from ClassModel.methods(), or in the
traversal of member elements of a class.
ClassBuilder.withMethod(String, MethodTypeDesc, int, Consumer) is the
main way to construct methods. ClassBuilder.transformMethod(MethodModel, MethodTransform) allows
creating a new method by selectively processing the original method elements
and directing the results to a method builder.
All method attributes are accessible as member elements.
- See Java Virtual Machine Specification:
-
4.6 Methods
- Since:
- 24
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptioncode()Returns the body of this method, if there is one.flags()Returns the access flags.Returns the name of this method.Returns the method descriptor string of this method.default MethodTypeDescReturns the method type, as a symbolic descriptor.parent()Returns the class model this method is a member of, if known.Methods declared in interface AttributedElement
attributes, findAttribute, findAttributesModifier and TypeMethodDescriptionReturns the attributes of this structure.findAttribute(AttributeMapper<T> attr) Finds an attribute by name.findAttributes(AttributeMapper<T> attr) Finds attributes by name.Methods declared in interface CompoundElement
elementList, elementStream, forEach, iterator, toDebugStringModifier and TypeMethodDescriptiondefault List<MethodElement> Returns aListcontaining all member elements in this compound element.default Stream<MethodElement> Returns aStreamcontaining all member elements in this compound element.voidforEach(Consumer<? super MethodElement> consumer) Invokes the provided handler with each member element in this compound element.default Iterator<MethodElement> iterator()Returns anIteratordescribing all member elements in this compound element.default StringReturns a text representation of the compound element and its contents for debugging purposes.Methods declared in interface Iterable
spliteratorModifier and TypeMethodDescriptiondefault Spliterator<MethodElement> Creates aSpliteratorover the elements described by thisIterable.
-
Method Details
-
flags
-
parent
Optional<ClassModel> parent()Returns the class model this method is a member of, if known.- Returns:
- the class model this method is a member of, if known
-
methodName
-
methodType
Utf8Entry methodType()Returns the method descriptor string of this method.- Returns:
- the method descriptor string of this method
-
methodTypeSymbol
Returns the method type, as a symbolic descriptor.- Returns:
- the method type, as a symbolic descriptor
-
code
-