Package net.bytebuddy.dynamic.scaffold
Class TypeWriter.Default.ForCreation.CreationClassVisitor
- java.lang.Object
-
- org.objectweb.asm.ClassVisitor
-
- net.bytebuddy.utility.visitor.MetadataAwareClassVisitor
-
- net.bytebuddy.dynamic.scaffold.TypeWriter.Default.ForCreation.CreationClassVisitor
-
- Enclosing class:
- TypeWriter.Default.ForCreation<U>
protected class TypeWriter.Default.ForCreation.CreationClassVisitor extends MetadataAwareClassVisitor
A class visitor that applies the subclass creation as a wrapper.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Set<java.lang.String>declaredTypesThe declared types that have been visited.private Implementation.Context.ExtractableViewimplementationContextThe implementation context to apply.private ModuleDescriptionmoduleDescriptionThe underlying module information ornullif no such information is provided.private java.util.Set<TypeWriter.Default.SignatureKey>visitedFieldsThe signatures of all fields that were explicitly visited.private java.util.Set<TypeWriter.Default.SignatureKey>visitedMethodsThe signature of all methods that were explicitly visited.
-
Constructor Summary
Constructors Modifier Constructor Description protectedCreationClassVisitor(org.objectweb.asm.ClassVisitor classVisitor, Implementation.Context.ExtractableView implementationContext, ModuleDescription moduleDescription)Creates a new wrapper visitor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidonAfterAttributes()Invoked if the attribute visitation is about to complete.protected voidonModule()Invoked if the module was not visited.protected voidonVisitEnd()An order-sensitive invocation ofClassVisitor.visitEnd().protected org.objectweb.asm.FieldVisitoronVisitField(int modifiers, java.lang.String name, java.lang.String descriptor, java.lang.String signature, java.lang.Object value)An order-sensitive invocation ofClassVisitor.visitField(int, String, String, String, Object).protected voidonVisitInnerClass(java.lang.String internalName, java.lang.String outerName, java.lang.String innerName, int modifiers)An order-sensitive invocation ofClassVisitor.visitInnerClass(String, String, String, int).protected org.objectweb.asm.MethodVisitoronVisitMethod(int modifiers, java.lang.String internalName, java.lang.String descriptor, java.lang.String signature, java.lang.String[] exception)An order-sensitive invocation ofClassVisitor.visitMethod(int, String, String, String, String[]).protected org.objectweb.asm.ModuleVisitoronVisitModule(java.lang.String name, int modifiers, java.lang.String version)An order-sensitive invocation ogClassVisitor.visitModule(String, int, String).-
Methods inherited from class net.bytebuddy.utility.visitor.MetadataAwareClassVisitor
onNestHost, onOuterType, onSource, onVisitAnnotation, onVisitAttribute, onVisitNestHost, onVisitNestMember, onVisitOuterClass, onVisitPermittedSubclass, onVisitRecordComponent, onVisitSource, onVisitTypeAnnotation, visitAnnotation, visitAttribute, visitEnd, visitField, visitInnerClass, visitMethod, visitModule, visitNestHost, visitNestMember, visitOuterClass, visitPermittedSubclass, visitRecordComponent, visitSource, visitTypeAnnotation
-
-
-
-
Field Detail
-
implementationContext
private final Implementation.Context.ExtractableView implementationContext
The implementation context to apply.
-
moduleDescription
@MaybeNull private final ModuleDescription moduleDescription
The underlying module information ornullif no such information is provided.
-
declaredTypes
private final java.util.Set<java.lang.String> declaredTypes
The declared types that have been visited.
-
visitedFields
private final java.util.Set<TypeWriter.Default.SignatureKey> visitedFields
The signatures of all fields that were explicitly visited.
-
visitedMethods
private final java.util.Set<TypeWriter.Default.SignatureKey> visitedMethods
The signature of all methods that were explicitly visited.
-
-
Constructor Detail
-
CreationClassVisitor
protected CreationClassVisitor(org.objectweb.asm.ClassVisitor classVisitor, Implementation.Context.ExtractableView implementationContext, @MaybeNull ModuleDescription moduleDescription)Creates a new wrapper visitor.- Parameters:
classVisitor- The class visitor being wrapped.implementationContext- The implementation context to apply.moduleDescription- The underlying module information ornullif no such information is provided.
-
-
Method Detail
-
onModule
protected void onModule()
Description copied from class:MetadataAwareClassVisitorInvoked if the module was not visited.- Overrides:
onModulein classMetadataAwareClassVisitor
-
onVisitModule
@MaybeNull protected org.objectweb.asm.ModuleVisitor onVisitModule(java.lang.String name, int modifiers, @MaybeNull java.lang.String version)
Description copied from class:MetadataAwareClassVisitorAn order-sensitive invocation ogClassVisitor.visitModule(String, int, String).- Overrides:
onVisitModulein classMetadataAwareClassVisitor- Parameters:
name- The name of the modulemodifiers- The modifiers of the module.version- The module version ornullif not available.- Returns:
- A visitor for the module information or
nullif skipped.
-
onAfterAttributes
protected void onAfterAttributes()
Description copied from class:MetadataAwareClassVisitorInvoked if the attribute visitation is about to complete.- Overrides:
onAfterAttributesin classMetadataAwareClassVisitor
-
onVisitInnerClass
protected void onVisitInnerClass(java.lang.String internalName, @MaybeNull java.lang.String outerName, @MaybeNull java.lang.String innerName, int modifiers)Description copied from class:MetadataAwareClassVisitorAn order-sensitive invocation ofClassVisitor.visitInnerClass(String, String, String, int).- Overrides:
onVisitInnerClassin classMetadataAwareClassVisitor- Parameters:
internalName- The internal name of the inner class.outerName- The internal name of the outer class ornullfor a member class.innerName- The inner class's simple name ornullfor an anonymous class.modifiers- The inner class's source code modifiers.
-
onVisitField
@MaybeNull protected org.objectweb.asm.FieldVisitor onVisitField(int modifiers, java.lang.String name, java.lang.String descriptor, @MaybeNull java.lang.String signature, @MaybeNull java.lang.Object value)
Description copied from class:MetadataAwareClassVisitorAn order-sensitive invocation ofClassVisitor.visitField(int, String, String, String, Object).- Overrides:
onVisitFieldin classMetadataAwareClassVisitor- Parameters:
modifiers- The field's modifiers.name- The field's internal name.descriptor- The field type's descriptor.signature- The field's generic signature ornullif the field is not generic.value- The field's default value ornullif no such value exists.- Returns:
- A field visitor to visit the field or
nullto ignore it.
-
onVisitMethod
@MaybeNull protected org.objectweb.asm.MethodVisitor onVisitMethod(int modifiers, java.lang.String internalName, java.lang.String descriptor, @MaybeNull java.lang.String signature, @MaybeNull java.lang.String[] exception)
Description copied from class:MetadataAwareClassVisitorAn order-sensitive invocation ofClassVisitor.visitMethod(int, String, String, String, String[]).- Overrides:
onVisitMethodin classMetadataAwareClassVisitor- Parameters:
modifiers- The method's modifiers.internalName- The method's internal name.descriptor- The field type's descriptor.signature- The method's generic signature ornullif the method is not generic.exception- The method's declared exceptions ornullif no exceptions are declared.- Returns:
- A method visitor to visit the method or
nullto ignore it.
-
onVisitEnd
protected void onVisitEnd()
Description copied from class:MetadataAwareClassVisitorAn order-sensitive invocation ofClassVisitor.visitEnd().- Overrides:
onVisitEndin classMetadataAwareClassVisitor
-
-