org.objectweb.asm.signature
Class SignatureVisitor

java.lang.Object
  extended by org.objectweb.asm.signature.SignatureVisitor
Direct Known Subclasses:
CheckSignatureAdapter, RemappingSignatureAdapter, SignatureWriter, TraceSignatureVisitor

public abstract class SignatureVisitor
extends Object

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):

Author:
Thomas Hallgren, Eric Bruneton

Field Summary
protected  int api
          The ASM API version implemented by this visitor.
static char EXTENDS
          Wildcard for an "extends" type argument.
static char INSTANCEOF
          Wildcard for a normal type argument.
static char SUPER
          Wildcard for a "super" type argument.
 
Constructor Summary
SignatureVisitor(int api)
          Constructs a new SignatureVisitor.
 
Method Summary
 SignatureVisitor visitArrayType()
          Visits a signature corresponding to an array type.
 void visitBaseType(char descriptor)
          Visits a signature corresponding to a primitive type.
 SignatureVisitor visitClassBound()
          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.
 SignatureVisitor visitExceptionType()
          Visits the type of a method exception.
 void visitFormalTypeParameter(String name)
          Visits a formal type parameter.
 void visitInnerClassType(String name)
          Visits an inner class.
 SignatureVisitor visitInterface()
          Visits the type of an interface implemented by the class.
 SignatureVisitor visitInterfaceBound()
          Visits an interface bound of the last visited formal type parameter.
 SignatureVisitor visitParameterType()
          Visits the type of a method parameter.
 SignatureVisitor visitReturnType()
          Visits the return type of the method.
 SignatureVisitor visitSuperclass()
          Visits the type of the super class.
 void visitTypeArgument()
          Visits an unbounded type argument of the last visited class or inner class type.
 SignatureVisitor 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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EXTENDS

public static final char EXTENDS
Wildcard for an "extends" type argument.

See Also:
Constant Field Values

SUPER

public static final char SUPER
Wildcard for a "super" type argument.

See Also:
Constant Field Values

INSTANCEOF

public static final char INSTANCEOF
Wildcard for a normal type argument.

See Also:
Constant Field Values

api

protected final int api
The ASM API version implemented by this visitor. The value of this field must be one of Opcodes.ASM4.

Constructor Detail

SignatureVisitor

public SignatureVisitor(int api)
Constructs a new SignatureVisitor.

Parameters:
api - the ASM API version implemented by this visitor. Must be one of Opcodes.ASM4.
Method Detail

visitFormalTypeParameter

public void visitFormalTypeParameter(String name)
Visits a formal type parameter.

Parameters:
name - the name of the formal parameter.

visitClassBound

public SignatureVisitor 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

public SignatureVisitor 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

public SignatureVisitor visitSuperclass()
Visits the type of the super class.

Returns:
a non null visitor to visit the signature of the super class type.

visitInterface

public SignatureVisitor 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

public SignatureVisitor visitParameterType()
Visits the type of a method parameter.

Returns:
a non null visitor to visit the signature of the parameter type.

visitReturnType

public SignatureVisitor visitReturnType()
Visits the return type of the method.

Returns:
a non null visitor to visit the signature of the return type.

visitExceptionType

public SignatureVisitor 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' for void .

visitTypeVariable

public void visitTypeVariable(String name)
Visits a signature corresponding to a type variable.

Parameters:
name - the name of the type variable.

visitArrayType

public SignatureVisitor visitArrayType()
Visits a signature corresponding to an array type.

Returns:
a non null visitor to visit the signature of the array element type.

visitClassType

public void visitClassType(String name)
Starts the visit of a signature corresponding to a class or interface type.

Parameters:
name - the internal name of the class or interface.

visitInnerClassType

public void visitInnerClassType(String name)
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

public SignatureVisitor visitTypeArgument(char wildcard)
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.