private void appendTypeReference()

in asm-util/src/main/java/org/objectweb/asm/util/Textifier.java [1460:1552]


  private void appendTypeReference(final int typeRef) {
    TypeReference typeReference = new TypeReference(typeRef);
    switch (typeReference.getSort()) {
      case TypeReference.CLASS_TYPE_PARAMETER:
        stringBuilder.append("CLASS_TYPE_PARAMETER ").append(typeReference.getTypeParameterIndex());
        break;
      case TypeReference.METHOD_TYPE_PARAMETER:
        stringBuilder
            .append("METHOD_TYPE_PARAMETER ")
            .append(typeReference.getTypeParameterIndex());
        break;
      case TypeReference.CLASS_EXTENDS:
        stringBuilder.append("CLASS_EXTENDS ").append(typeReference.getSuperTypeIndex());
        break;
      case TypeReference.CLASS_TYPE_PARAMETER_BOUND:
        stringBuilder
            .append("CLASS_TYPE_PARAMETER_BOUND ")
            .append(typeReference.getTypeParameterIndex())
            .append(", ")
            .append(typeReference.getTypeParameterBoundIndex());
        break;
      case TypeReference.METHOD_TYPE_PARAMETER_BOUND:
        stringBuilder
            .append("METHOD_TYPE_PARAMETER_BOUND ")
            .append(typeReference.getTypeParameterIndex())
            .append(", ")
            .append(typeReference.getTypeParameterBoundIndex());
        break;
      case TypeReference.FIELD:
        stringBuilder.append("FIELD");
        break;
      case TypeReference.METHOD_RETURN:
        stringBuilder.append("METHOD_RETURN");
        break;
      case TypeReference.METHOD_RECEIVER:
        stringBuilder.append("METHOD_RECEIVER");
        break;
      case TypeReference.METHOD_FORMAL_PARAMETER:
        stringBuilder
            .append("METHOD_FORMAL_PARAMETER ")
            .append(typeReference.getFormalParameterIndex());
        break;
      case TypeReference.THROWS:
        stringBuilder.append("THROWS ").append(typeReference.getExceptionIndex());
        break;
      case TypeReference.LOCAL_VARIABLE:
        stringBuilder.append("LOCAL_VARIABLE");
        break;
      case TypeReference.RESOURCE_VARIABLE:
        stringBuilder.append("RESOURCE_VARIABLE");
        break;
      case TypeReference.EXCEPTION_PARAMETER:
        stringBuilder.append("EXCEPTION_PARAMETER ").append(typeReference.getTryCatchBlockIndex());
        break;
      case TypeReference.INSTANCEOF:
        stringBuilder.append("INSTANCEOF");
        break;
      case TypeReference.NEW:
        stringBuilder.append("NEW");
        break;
      case TypeReference.CONSTRUCTOR_REFERENCE:
        stringBuilder.append("CONSTRUCTOR_REFERENCE");
        break;
      case TypeReference.METHOD_REFERENCE:
        stringBuilder.append("METHOD_REFERENCE");
        break;
      case TypeReference.CAST:
        stringBuilder.append("CAST ").append(typeReference.getTypeArgumentIndex());
        break;
      case TypeReference.CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT:
        stringBuilder
            .append("CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT ")
            .append(typeReference.getTypeArgumentIndex());
        break;
      case TypeReference.METHOD_INVOCATION_TYPE_ARGUMENT:
        stringBuilder
            .append("METHOD_INVOCATION_TYPE_ARGUMENT ")
            .append(typeReference.getTypeArgumentIndex());
        break;
      case TypeReference.CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT:
        stringBuilder
            .append("CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT ")
            .append(typeReference.getTypeArgumentIndex());
        break;
      case TypeReference.METHOD_REFERENCE_TYPE_ARGUMENT:
        stringBuilder
            .append("METHOD_REFERENCE_TYPE_ARGUMENT ")
            .append(typeReference.getTypeArgumentIndex());
        break;
      default:
        throw new IllegalArgumentException();
    }
  }