Package jodd.asm

Class TraceSignatureVisitor

  • Direct Known Subclasses:
    MethodSignatureVisitor

    public class TraceSignatureVisitor
    extends SignatureVisitor
    A SignatureVisitor that builds the Java generic type declaration corresponding to the signature it visits.

    Changes made by Igor (http://jodd.org):

    • removed final for the class
    • some private scopes made protected
    • public constructor change to accept boolean
    • use AsmUtil constants
    • use StringBuilder instead of StringBuffer
    • getExceptions() and getReturnType() removed
    • Field Detail

      • isInterface

        protected final boolean isInterface
        Whether the visited signature is a class signature of a Java interface.
      • declaration

        protected final java.lang.StringBuilder declaration
        The Java generic type declaration corresponding to the visited signature.
      • argumentStack

        protected int argumentStack
        The stack used to keep track of class types that have arguments. Each element of this stack is a boolean encoded in one bit. The top of the stack is the least significant bit. Pushing false = *2, pushing true = *2+1, popping = /2.
    • Constructor Detail

      • TraceSignatureVisitor

        protected TraceSignatureVisitor​(java.lang.StringBuilder stringBuilder)
      • TraceSignatureVisitor

        public TraceSignatureVisitor​(java.lang.StringBuilder stringBuilder,
                                     boolean isInterface)
    • Method Detail

      • visitFormalTypeParameter

        public void visitFormalTypeParameter​(java.lang.String name)
        Description copied from class: SignatureVisitor
        Visits a formal type parameter.
        Overrides:
        visitFormalTypeParameter in class SignatureVisitor
        Parameters:
        name - the name of the formal parameter.
      • visitBaseType

        public void visitBaseType​(char descriptor)
        Description copied from class: SignatureVisitor
        Visits a signature corresponding to a primitive type.
        Overrides:
        visitBaseType in class SignatureVisitor
        Parameters:
        descriptor - the descriptor of the primitive type, or 'V' for void .
      • visitTypeVariable

        public void visitTypeVariable​(java.lang.String name)
        Description copied from class: SignatureVisitor
        Visits a signature corresponding to a type variable.
        Overrides:
        visitTypeVariable in class SignatureVisitor
        Parameters:
        name - the name of the type variable.
      • visitClassType

        public void visitClassType​(java.lang.String name)
        Description copied from class: SignatureVisitor
        Starts the visit of a signature corresponding to a class or interface type.
        Overrides:
        visitClassType in class SignatureVisitor
        Parameters:
        name - the internal name of the class or interface.
      • visitInnerClassType

        public void visitInnerClassType​(java.lang.String name)
        Description copied from class: SignatureVisitor
        Visits an inner class.
        Overrides:
        visitInnerClassType in class SignatureVisitor
        Parameters:
        name - the local name of the inner class in its enclosing class.
      • visitTypeArgument

        public SignatureVisitor visitTypeArgument​(char tag)
        Description copied from class: SignatureVisitor
        Visits a type argument of the last visited class or inner class type.
        Overrides:
        visitTypeArgument in class SignatureVisitor
        Parameters:
        tag - '+', '-' or '='.
        Returns:
        a non null visitor to visit the signature of the type argument.
      • visitEnd

        public void visitEnd()
        Description copied from class: SignatureVisitor
        Ends the visit of a signature corresponding to a class or interface type.
        Overrides:
        visitEnd in class SignatureVisitor
      • getDeclaration

        public java.lang.String getDeclaration()
        Returns the Java generic type declaration corresponding to the visited signature.
        Returns:
        the Java generic type declaration corresponding to the visited signature.
      • startType

        protected void startType()
      • endType

        protected void endType()