类 TraceSignatureVisitor

java.lang.Object
cn.taketoday.bytecode.signature.SignatureVisitor
cn.taketoday.bytecode.util.TraceSignatureVisitor

public final class TraceSignatureVisitor extends SignatureVisitor
A SignatureVisitor that builds the Java generic type declaration corresponding to the signature it visits.
作者:
Eugene Kuleshov, Eric Bruneton
  • 字段详细资料

    • COMMA_SEPARATOR

      private static final String COMMA_SEPARATOR
      另请参阅:
    • EXTENDS_SEPARATOR

      private static final String EXTENDS_SEPARATOR
      另请参阅:
    • IMPLEMENTS_SEPARATOR

      private static final String IMPLEMENTS_SEPARATOR
      另请参阅:
    • BASE_TYPES

      private static final Map<Character,String> BASE_TYPES
    • isInterface

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

      private final StringBuilder declaration
      The Java generic type declaration corresponding to the visited signature.
    • returnType

      private StringBuilder returnType
      The Java generic method return type declaration corresponding to the visited signature.
    • exceptions

      private StringBuilder exceptions
      The Java generic exception types declaration corresponding to the visited signature.
    • formalTypeParameterVisited

      private boolean formalTypeParameterVisited
    • interfaceBoundVisited

      private boolean interfaceBoundVisited
      Whether visitInterfaceBound() has been called.
    • parameterTypeVisited

      private boolean parameterTypeVisited
      Whether visitParameterType() has been called.
    • interfaceVisited

      private boolean interfaceVisited
      Whether visitInterface() has been called.
    • argumentStack

      private 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.
    • arrayStack

      private int arrayStack
      The stack used to keep track of array class types. Each element of this stack is a boolean encoded in one bit. The top of the stack is the lowest order bit. Pushing false = *2, pushing true = *2+1, popping = /2.
    • separator

      private String separator
      The separator to append before the next visited class or inner class type.
  • 构造器详细资料

    • TraceSignatureVisitor

      public TraceSignatureVisitor(int accessFlags)
      Constructs a new TraceSignatureVisitor.
      参数:
      accessFlags - for class type signatures, the access flags of the class.
    • TraceSignatureVisitor

      private TraceSignatureVisitor(StringBuilder stringBuilder)
  • 方法详细资料

    • visitFormalTypeParameter

      public void visitFormalTypeParameter(String name)
      从类复制的说明: SignatureVisitor
      Visits a formal type parameter.
      覆盖:
      visitFormalTypeParameter 在类中 SignatureVisitor
      参数:
      name - the name of the formal parameter.
    • visitClassBound

      public SignatureVisitor visitClassBound()
      从类复制的说明: SignatureVisitor
      Visits the class bound of the last visited formal type parameter.
      覆盖:
      visitClassBound 在类中 SignatureVisitor
      返回:
      a non null visitor to visit the signature of the class bound.
    • visitInterfaceBound

      public SignatureVisitor visitInterfaceBound()
      从类复制的说明: SignatureVisitor
      Visits an interface bound of the last visited formal type parameter.
      覆盖:
      visitInterfaceBound 在类中 SignatureVisitor
      返回:
      a non null visitor to visit the signature of the interface bound.
    • visitSuperclass

      public SignatureVisitor visitSuperclass()
      从类复制的说明: SignatureVisitor
      Visits the type of the super class.
      覆盖:
      visitSuperclass 在类中 SignatureVisitor
      返回:
      a non null visitor to visit the signature of the super class type.
    • visitInterface

      public SignatureVisitor visitInterface()
      从类复制的说明: SignatureVisitor
      Visits the type of an interface implemented by the class.
      覆盖:
      visitInterface 在类中 SignatureVisitor
      返回:
      a non null visitor to visit the signature of the interface type.
    • visitParameterType

      public SignatureVisitor visitParameterType()
      从类复制的说明: SignatureVisitor
      Visits the type of a method parameter.
      覆盖:
      visitParameterType 在类中 SignatureVisitor
      返回:
      a non null visitor to visit the signature of the parameter type.
    • visitReturnType

      public SignatureVisitor visitReturnType()
      从类复制的说明: SignatureVisitor
      Visits the return type of the method.
      覆盖:
      visitReturnType 在类中 SignatureVisitor
      返回:
      a non null visitor to visit the signature of the return type.
    • visitExceptionType

      public SignatureVisitor visitExceptionType()
      从类复制的说明: SignatureVisitor
      Visits the type of a method exception.
      覆盖:
      visitExceptionType 在类中 SignatureVisitor
      返回:
      a non null visitor to visit the signature of the exception type.
    • visitBaseType

      public void visitBaseType(char descriptor)
      从类复制的说明: SignatureVisitor
      Visits a signature corresponding to a primitive type.
      覆盖:
      visitBaseType 在类中 SignatureVisitor
      参数:
      descriptor - the descriptor of the primitive type, or 'V' for void .
    • visitTypeVariable

      public void visitTypeVariable(String name)
      从类复制的说明: SignatureVisitor
      Visits a signature corresponding to a type variable.
      覆盖:
      visitTypeVariable 在类中 SignatureVisitor
      参数:
      name - the name of the type variable.
    • visitArrayType

      public SignatureVisitor visitArrayType()
      从类复制的说明: SignatureVisitor
      Visits a signature corresponding to an array type.
      覆盖:
      visitArrayType 在类中 SignatureVisitor
      返回:
      a non null visitor to visit the signature of the array element type.
    • visitClassType

      public void visitClassType(String name)
      从类复制的说明: SignatureVisitor
      Starts the visit of a signature corresponding to a class or interface type.
      覆盖:
      visitClassType 在类中 SignatureVisitor
      参数:
      name - the internal name of the class or interface.
    • visitInnerClassType

      public void visitInnerClassType(String name)
      从类复制的说明: SignatureVisitor
      Visits an inner class.
      覆盖:
      visitInnerClassType 在类中 SignatureVisitor
      参数:
      name - the local name of the inner class in its enclosing class.
    • visitTypeArgument

      public void visitTypeArgument()
      从类复制的说明: SignatureVisitor
      Visits an unbounded type argument of the last visited class or inner class type.
      覆盖:
      visitTypeArgument 在类中 SignatureVisitor
    • visitTypeArgument

      public SignatureVisitor visitTypeArgument(char tag)
      从类复制的说明: SignatureVisitor
      Visits a type argument of the last visited class or inner class type.
      覆盖:
      visitTypeArgument 在类中 SignatureVisitor
      参数:
      tag - '+', '-' or '='.
      返回:
      a non null visitor to visit the signature of the type argument.
    • visitEnd

      public void visitEnd()
      从类复制的说明: SignatureVisitor
      Ends the visit of a signature corresponding to a class or interface type.
      覆盖:
      visitEnd 在类中 SignatureVisitor
    • getDeclaration

      public String getDeclaration()
      Returns the Java generic type declaration corresponding to the visited signature.
      返回:
      the Java generic type declaration corresponding to the visited signature.
    • getReturnType

      public String getReturnType()
      Returns the Java generic method return type declaration corresponding to the visited signature.
      返回:
      the Java generic method return type declaration corresponding to the visited signature.
    • getExceptions

      public String getExceptions()
      Returns the Java generic exception types declaration corresponding to the visited signature.
      返回:
      the Java generic exception types declaration corresponding to the visited signature.
    • endFormals

      private void endFormals()
    • startType

      private void startType()
    • endType

      private void endType()