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 = (
visitFormalTypeParameter
visitClassBound
?visitInterfaceBound
* )* (visitSuperclass
visitInterface
* ) - MethodSignature = (
visitFormalTypeParameter
visitClassBound
?visitInterfaceBound
* )* (visitParameterType
*visitReturnType
visitExceptionType
* ) - TypeSignature =
visitBaseType
|visitTypeVariable
|visitArrayType
| (visitClassType
visitTypeArgument
* (visitInnerClassType
visitTypeArgument
* )*visitEnd
) )
-
Field Summary
Modifier and TypeFieldDescriptionprotected final int
The ASM API version implemented by this visitor.static final char
Wildcard for an "extends" type argument.static final char
Wildcard for a normal type argument.static final char
Wildcard for a "super" type argument. -
Constructor Summary
ModifierConstructorDescriptionprotected
SignatureVisitor
(int api) Constructs a newSignatureVisitor
. -
Method Summary
Modifier and TypeMethodDescriptionVisits a signature corresponding to an array type.void
visitBaseType
(char descriptor) Visits a signature corresponding to a primitive type.Visits the class bound of the last visited formal type parameter.void
visitClassType
(String name) Starts the visit of a signature corresponding to a class or interface type.void
visitEnd()
Ends the visit of a signature corresponding to a class or interface type.Visits the type of a method exception.void
Visits a formal type parameter.void
visitInnerClassType
(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.void
Visits 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.void
visitTypeVariable
(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 theASM
x 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 theASM
x 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.
-