Module org.eclipse.persistence.asm
Class SignatureVisitor
java.lang.Object
org.eclipse.persistence.internal.libraries.asm.signature.SignatureVisitor
- Direct Known Subclasses:
SignatureRemapper,SignatureWriter
A visitor to visit a generic signature. The methods of this interface must be called in one of
the three following orders (the last one is the only valid order for a
SignatureVisitor
that is returned by a method of this interface):
- ClassSignature = (
visitFormalTypeParametervisitClassBound?visitInterfaceBound* )* (visitSuperclassvisitInterface* ) - MethodSignature = (
visitFormalTypeParametervisitClassBound?visitInterfaceBound* )* (visitParameterType*visitReturnTypevisitExceptionType* ) - TypeSignature =
visitBaseType|visitTypeVariable|visitArrayType| (visitClassTypevisitTypeArgument* (visitInnerClassTypevisitTypeArgument* )*visitEnd) )
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final intThe ASM API version implemented by this visitor.static final charWildcard for an "extends" type argument.static final charWildcard for a normal type argument.static final charWildcard for a "super" type argument. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedSignatureVisitor(int api) Constructs a newSignatureVisitor. -
Method Summary
Modifier and TypeMethodDescriptionVisits a signature corresponding to an array type.voidvisitBaseType(char descriptor) Visits a signature corresponding to a primitive type.Visits the class bound of the last visited formal type parameter.voidvisitClassType(String name) Starts the visit of a signature corresponding to a class or interface type.voidvisitEnd()Ends the visit of a signature corresponding to a class or interface type.Visits the type of a method exception.voidVisits a formal type parameter.voidvisitInnerClassType(String name) Visits an inner class.Visits the type of an interface implemented by the class.Visits an interface bound of the last visited formal type parameter.Visits the type of a method parameter.Visits the return type of the method.Visits the type of the super class.voidVisits an unbounded type argument of the last visited class or inner class type.visitTypeArgument(char wildcard) Visits a type argument of the last visited class or inner class type.voidvisitTypeVariable(String name) Visits a signature corresponding to a type variable.
-
Field Details
-
EXTENDS
public static final char EXTENDSWildcard for an "extends" type argument.- See Also:
-
SUPER
public static final char SUPERWildcard for a "super" type argument.- See Also:
-
INSTANCEOF
public static final char INSTANCEOFWildcard for a normal type argument.- See Also:
-
api
protected final int apiThe ASM API version implemented by this visitor. The value of this field must be one of theASMx values inOpcodes.
-
-
Constructor Details
-
SignatureVisitor
protected SignatureVisitor(int api) Constructs a newSignatureVisitor.- Parameters:
api- the ASM API version implemented by this visitor. Must be one of theASMx values inOpcodes.
-
-
Method Details
-
visitFormalTypeParameter
Visits a formal type parameter.- Parameters:
name- the name of the formal parameter.
-
visitClassBound
Visits the class bound of the last visited formal type parameter.- Returns:
- a non null visitor to visit the signature of the class bound.
-
visitInterfaceBound
Visits an interface bound of the last visited formal type parameter.- Returns:
- a non null visitor to visit the signature of the interface bound.
-
visitSuperclass
Visits the type of the super class.- Returns:
- a non null visitor to visit the signature of the super class type.
-
visitInterface
Visits the type of an interface implemented by the class.- Returns:
- a non null visitor to visit the signature of the interface type.
-
visitParameterType
Visits the type of a method parameter.- Returns:
- a non null visitor to visit the signature of the parameter type.
-
visitReturnType
Visits the return type of the method.- Returns:
- a non null visitor to visit the signature of the return type.
-
visitExceptionType
Visits the type of a method exception.- Returns:
- a non null visitor to visit the signature of the exception type.
-
visitBaseType
public void visitBaseType(char descriptor) Visits a signature corresponding to a primitive type.- Parameters:
descriptor- the descriptor of the primitive type, or 'V' forvoid.
-
visitTypeVariable
Visits a signature corresponding to a type variable.- Parameters:
name- the name of the type variable.
-
visitArrayType
Visits a signature corresponding to an array type.- Returns:
- a non null visitor to visit the signature of the array element type.
-
visitClassType
Starts the visit of a signature corresponding to a class or interface type.- Parameters:
name- the internal name of the class or interface (seeType.getInternalName()).
-
visitInnerClassType
Visits an inner class.- Parameters:
name- the local name of the inner class in its enclosing class.
-
visitTypeArgument
public void visitTypeArgument()Visits an unbounded type argument of the last visited class or inner class type. -
visitTypeArgument
Visits a type argument of the last visited class or inner class type.- Parameters:
wildcard- '+', '-' or '='.- Returns:
- a non null visitor to visit the signature of the type argument.
-
visitEnd
public void visitEnd()Ends the visit of a signature corresponding to a class or interface type.
-