docs: static String formalTypeParametersString(TypeElement type) {
      List<? extends TypeParameterElement> typeParameters = type.getTypeParameters();
      if (typeParameters.isEmpty()) {
        return "";
      } else {
        StringBuilder sb = new StringBuilder("<");
        String sep = "";
        for (TypeParameterElement typeParameter : typeParameters) {
          sb.append(sep);
          sep = ", ";
          appendTypeParameterWithBounds(typeParameter, sb);
        }
        return sb.append(">").toString();
      }
    }