Package net.bytebuddy.dynamic.scaffold
Class TypeWriter.Default.ValidatingClassVisitor
java.lang.Object
org.objectweb.asm.ClassVisitor
net.bytebuddy.dynamic.scaffold.TypeWriter.Default.ValidatingClassVisitor
- Enclosing class:
- TypeWriter.Default<S>
protected static class TypeWriter.Default.ValidatingClassVisitor
extends org.objectweb.asm.ClassVisitor
A class validator that validates that a class only defines members that are appropriate for the sort of the generated class.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static interface
A constraint for members that are legal for a given type.protected class
A field validator for checking default values.protected class
A method validator for checking default values. -
Field Summary
FieldsModifier and TypeFieldDescriptionThe constraint to assert the members against.private static final org.objectweb.asm.FieldVisitor
Indicates that a field is ignored.private static final org.objectweb.asm.MethodVisitor
Indicates that a method is ignored.private static final String
Indicates that a method has no method parameters.private static final String
Indicates that a method returns void.private static final String
The descriptor of theString
type.Fields inherited from class org.objectweb.asm.ClassVisitor
api, cv
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
ValidatingClassVisitor
(org.objectweb.asm.ClassVisitor classVisitor) Creates a validating class visitor. -
Method Summary
Modifier and TypeMethodDescriptionprotected static org.objectweb.asm.ClassVisitor
of
(org.objectweb.asm.ClassVisitor classVisitor, TypeValidation typeValidation) Adds a validating visitor if type validation is enabled.void
visit
(int version, int modifiers, String name, String signature, String superName, String[] interfaces) org.objectweb.asm.AnnotationVisitor
visitAnnotation
(String descriptor, boolean visible) org.objectweb.asm.FieldVisitor
visitField
(int modifiers, String name, String descriptor, String signature, Object defaultValue) org.objectweb.asm.MethodVisitor
visitMethod
(int modifiers, String name, String descriptor, String signature, String[] exceptions) void
visitNestHost
(String nestHost) void
visitNestMember
(String nestMember) void
visitPermittedSubclass
(String permittedSubclass) org.objectweb.asm.AnnotationVisitor
visitTypeAnnotation
(int typeReference, org.objectweb.asm.TypePath typePath, String descriptor, boolean visible) Methods inherited from class org.objectweb.asm.ClassVisitor
visitAttribute, visitEnd, visitInnerClass, visitModule, visitOuterClass, visitRecordComponent, visitSource
-
Field Details
-
NO_PARAMETERS
Indicates that a method has no method parameters.- See Also:
-
RETURNS_VOID
Indicates that a method returns void.- See Also:
-
STRING_DESCRIPTOR
The descriptor of theString
type.- See Also:
-
IGNORE_FIELD
private static final org.objectweb.asm.FieldVisitor IGNORE_FIELDIndicates that a field is ignored. -
IGNORE_METHOD
private static final org.objectweb.asm.MethodVisitor IGNORE_METHODIndicates that a method is ignored. -
constraint
The constraint to assert the members against. The constraint is first defined when the general class information is visited.
-
-
Constructor Details
-
ValidatingClassVisitor
protected ValidatingClassVisitor(org.objectweb.asm.ClassVisitor classVisitor) Creates a validating class visitor.- Parameters:
classVisitor
- The class visitor to which any calls are delegated to.
-
-
Method Details
-
of
protected static org.objectweb.asm.ClassVisitor of(org.objectweb.asm.ClassVisitor classVisitor, TypeValidation typeValidation) Adds a validating visitor if type validation is enabled.- Parameters:
classVisitor
- The original class visitor.typeValidation
- The type validation state.- Returns:
- A class visitor that applies type validation if this is required.
-
visit
public void visit(int version, int modifiers, String name, String signature, String superName, String[] interfaces) - Overrides:
visit
in classorg.objectweb.asm.ClassVisitor
-
visitPermittedSubclass
- Overrides:
visitPermittedSubclass
in classorg.objectweb.asm.ClassVisitor
-
visitAnnotation
- Overrides:
visitAnnotation
in classorg.objectweb.asm.ClassVisitor
-
visitTypeAnnotation
public org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int typeReference, org.objectweb.asm.TypePath typePath, String descriptor, boolean visible) - Overrides:
visitTypeAnnotation
in classorg.objectweb.asm.ClassVisitor
-
visitNestHost
- Overrides:
visitNestHost
in classorg.objectweb.asm.ClassVisitor
-
visitNestMember
- Overrides:
visitNestMember
in classorg.objectweb.asm.ClassVisitor
-
visitField
public org.objectweb.asm.FieldVisitor visitField(int modifiers, String name, String descriptor, String signature, Object defaultValue) - Overrides:
visitField
in classorg.objectweb.asm.ClassVisitor
-
visitMethod
public org.objectweb.asm.MethodVisitor visitMethod(int modifiers, String name, String descriptor, String signature, String[] exceptions) - Overrides:
visitMethod
in classorg.objectweb.asm.ClassVisitor
-