Package org.objectweb.asm.tools
Class Retrofitter.ClassVerifier
- java.lang.Object
-
- org.objectweb.asm.ClassVisitor
-
- org.objectweb.asm.tools.Retrofitter.ClassVerifier
-
- Enclosing class:
- Retrofitter
class Retrofitter.ClassVerifier extends ClassVisitor
A ClassVisitor checking that a class uses only JDK 1.5 class file features and the JDK 1.5 API.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.lang.String
className
The internal name of the visited class.(package private) java.lang.String
currentMethodName
The name of the currently visited method.-
Fields inherited from class org.objectweb.asm.ClassVisitor
api, cv
-
-
Constructor Summary
Constructors Constructor Description ClassVerifier()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
check(java.lang.String owner, java.lang.String member)
Checks whether or not a field or method is defined in the JDK 1.5 API.void
visit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)
Visits the header of the class.MethodVisitor
visitMethod(int access, java.lang.String name, java.lang.String descriptor, java.lang.String signature, java.lang.String[] exceptions)
Visits a method of the class.-
Methods inherited from class org.objectweb.asm.ClassVisitor
getDelegate, visitAnnotation, visitAttribute, visitEnd, visitField, visitInnerClass, visitModule, visitNestHost, visitNestMember, visitOuterClass, visitPermittedSubclass, visitRecordComponent, visitSource, visitTypeAnnotation
-
-
-
-
Method Detail
-
visit
public void visit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)
Description copied from class:ClassVisitor
Visits the header of the class.- Overrides:
visit
in classClassVisitor
- Parameters:
version
- the class version. The minor version is stored in the 16 most significant bits, and the major version in the 16 least significant bits.access
- the class's access flags (seeOpcodes
). This parameter also indicates if the class is deprecatedOpcodes.ACC_DEPRECATED
or a recordOpcodes.ACC_RECORD
.name
- the internal name of the class (seeType.getInternalName()
).signature
- the signature of this class. May be null if the class is not a generic one, and does not extend or implement generic classes or interfaces.superName
- the internal of name of the super class (seeType.getInternalName()
). For interfaces, the super class isObject
. May be null, but only for theObject
class.interfaces
- the internal names of the class's interfaces (seeType.getInternalName()
). May be null.
-
visitMethod
public MethodVisitor visitMethod(int access, java.lang.String name, java.lang.String descriptor, java.lang.String signature, java.lang.String[] exceptions)
Description copied from class:ClassVisitor
Visits a method of the class. This method must return a newMethodVisitor
instance (or null) each time it is called, i.e., it should not return a previously returned visitor.- Overrides:
visitMethod
in classClassVisitor
- Parameters:
access
- the method's access flags (seeOpcodes
). This parameter also indicates if the method is synthetic and/or deprecated.name
- the method's name.descriptor
- the method's descriptor (seeType
).signature
- the method's signature. May be null if the method parameters, return type and exceptions do not use generic types.exceptions
- the internal names of the method's exception classes (seeType.getInternalName()
). May be null.- Returns:
- an object to visit the byte code of the method, or null if this class visitor is not interested in visiting the code of this method.
-
check
private void check(java.lang.String owner, java.lang.String member)
Checks whether or not a field or method is defined in the JDK 1.5 API.- Parameters:
owner
- A class name.member
- A field name or a method name and descriptor.
-
-