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 Classes Modifier and Type Class Description protected static interface
TypeWriter.Default.ValidatingClassVisitor.Constraint
A constraint for members that are legal for a given type.protected class
TypeWriter.Default.ValidatingClassVisitor.ValidatingFieldVisitor
A field validator for checking default values.protected class
TypeWriter.Default.ValidatingClassVisitor.ValidatingMethodVisitor
A method validator for checking default values.
-
Field Summary
Fields Modifier and Type Field Description private TypeWriter.Default.ValidatingClassVisitor.Constraint
constraint
The constraint to assert the members against.private static org.objectweb.asm.FieldVisitor
IGNORE_FIELD
Indicates that a field is ignored.private static org.objectweb.asm.MethodVisitor
IGNORE_METHOD
Indicates that a method is ignored.private static java.lang.String
NO_PARAMETERS
Indicates that a method has no method parameters.private static java.lang.String
RETURNS_VOID
Indicates that a method returns void.private static java.lang.String
STRING_DESCRIPTOR
The descriptor of theString
type.
-
Constructor Summary
Constructors Modifier Constructor Description protected
ValidatingClassVisitor(org.objectweb.asm.ClassVisitor classVisitor)
Creates a validating class visitor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected 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, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)
org.objectweb.asm.AnnotationVisitor
visitAnnotation(java.lang.String descriptor, boolean visible)
org.objectweb.asm.FieldVisitor
visitField(int modifiers, java.lang.String name, java.lang.String descriptor, java.lang.String signature, java.lang.Object defaultValue)
org.objectweb.asm.MethodVisitor
visitMethod(int modifiers, java.lang.String name, java.lang.String descriptor, java.lang.String signature, java.lang.String[] exceptions)
void
visitNestHost(java.lang.String nestHost)
void
visitNestMember(java.lang.String nestMember)
void
visitPermittedSubclass(java.lang.String permittedSubclass)
org.objectweb.asm.AnnotationVisitor
visitTypeAnnotation(int typeReference, org.objectweb.asm.TypePath typePath, java.lang.String descriptor, boolean visible)
-
-
-
Field Detail
-
NO_PARAMETERS
private static final java.lang.String NO_PARAMETERS
Indicates that a method has no method parameters.- See Also:
- Constant Field Values
-
RETURNS_VOID
private static final java.lang.String RETURNS_VOID
Indicates that a method returns void.- See Also:
- Constant Field Values
-
STRING_DESCRIPTOR
private static final java.lang.String STRING_DESCRIPTOR
The descriptor of theString
type.- See Also:
- Constant Field Values
-
IGNORE_FIELD
private static final org.objectweb.asm.FieldVisitor IGNORE_FIELD
Indicates that a field is ignored.
-
IGNORE_METHOD
private static final org.objectweb.asm.MethodVisitor IGNORE_METHOD
Indicates that a method is ignored.
-
constraint
private TypeWriter.Default.ValidatingClassVisitor.Constraint constraint
The constraint to assert the members against. The constraint is first defined when the general class information is visited.
-
-
Method Detail
-
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, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)
- Overrides:
visit
in classorg.objectweb.asm.ClassVisitor
-
visitPermittedSubclass
public void visitPermittedSubclass(java.lang.String permittedSubclass)
- Overrides:
visitPermittedSubclass
in classorg.objectweb.asm.ClassVisitor
-
visitAnnotation
public org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String descriptor, boolean visible)
- Overrides:
visitAnnotation
in classorg.objectweb.asm.ClassVisitor
-
visitTypeAnnotation
public org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int typeReference, org.objectweb.asm.TypePath typePath, java.lang.String descriptor, boolean visible)
- Overrides:
visitTypeAnnotation
in classorg.objectweb.asm.ClassVisitor
-
visitNestHost
public void visitNestHost(java.lang.String nestHost)
- Overrides:
visitNestHost
in classorg.objectweb.asm.ClassVisitor
-
visitNestMember
public void visitNestMember(java.lang.String nestMember)
- Overrides:
visitNestMember
in classorg.objectweb.asm.ClassVisitor
-
visitField
public org.objectweb.asm.FieldVisitor visitField(int modifiers, java.lang.String name, java.lang.String descriptor, java.lang.String signature, java.lang.Object defaultValue)
- Overrides:
visitField
in classorg.objectweb.asm.ClassVisitor
-
visitMethod
public org.objectweb.asm.MethodVisitor visitMethod(int modifiers, java.lang.String name, java.lang.String descriptor, java.lang.String signature, java.lang.String[] exceptions)
- Overrides:
visitMethod
in classorg.objectweb.asm.ClassVisitor
-
-