Package io.ebean.enhance.asm
Class RecordComponentVisitor
java.lang.Object
io.ebean.enhance.asm.RecordComponentVisitor
A visitor to visit a record component. The methods of this class must be called in the following
order: (
visitAnnotation | visitTypeAnnotation | visitAttribute )*
visitEnd.- Author:
- Remi Forax, Eric Bruneton
-
Constructor Summary
ConstructorsConstructorDescriptionRecordComponentVisitor(int api) Constructs a newRecordComponentVisitor.RecordComponentVisitor(int api, RecordComponentVisitor recordComponentVisitor) Constructs a newRecordComponentVisitor. -
Method Summary
Modifier and TypeMethodDescriptionThe record visitor to which this visitor must delegate method calls.visitAnnotation(String descriptor, boolean visible) Visits an annotation of the record component.voidvisitAttribute(Attribute attribute) Visits a non standard attribute of the record component.voidvisitEnd()Visits the end of the record component.visitTypeAnnotation(int typeRef, TypePath typePath, String descriptor, boolean visible) Visits an annotation on a type in the record component signature.
-
Constructor Details
-
RecordComponentVisitor
Constructs a newRecordComponentVisitor.- Parameters:
api- the ASM API version implemented by this visitor. Must be one ofOpcodes.ASM8orOpcodes.ASM9.
-
RecordComponentVisitor
Constructs a newRecordComponentVisitor.- Parameters:
api- the ASM API version implemented by this visitor. Must beOpcodes.ASM8.recordComponentVisitor- the record component visitor to which this visitor must delegate method calls. May be null.
-
-
Method Details
-
getDelegate
The record visitor to which this visitor must delegate method calls. May be null.- Returns:
- the record visitor to which this visitor must delegate method calls or null.
-
visitAnnotation
Visits an annotation of the record component.- Parameters:
descriptor- the class descriptor of the annotation class.visible- true if the annotation is visible at runtime.- Returns:
- a visitor to visit the annotation values, or null if this visitor is not interested in visiting this annotation.
-
visitTypeAnnotation
public AnnotationVisitor visitTypeAnnotation(int typeRef, TypePath typePath, String descriptor, boolean visible) Visits an annotation on a type in the record component signature.- Parameters:
typeRef- a reference to the annotated type. The sort of this type reference must beTypeReference.CLASS_TYPE_PARAMETER,TypeReference.CLASS_TYPE_PARAMETER_BOUNDorTypeReference.CLASS_EXTENDS. SeeTypeReference.typePath- the path to the annotated type argument, wildcard bound, array element type, or static inner type within 'typeRef'. May be null if the annotation targets 'typeRef' as a whole.descriptor- the class descriptor of the annotation class.visible- true if the annotation is visible at runtime.- Returns:
- a visitor to visit the annotation values, or null if this visitor is not interested in visiting this annotation.
-
visitAttribute
Visits a non standard attribute of the record component.- Parameters:
attribute- an attribute.
-
visitEnd
Visits the end of the record component. This method, which is the last one to be called, is used to inform the visitor that everything have been visited.
-