private void generateTypeParametersSection(StringBuilder buffer, PsiMethod method, PsiDocComment comment) {
    PsiDocTag[] localTags = comment == null ? PsiDocTag.EMPTY_ARRAY : comment.findTagsByName("param");
    PsiTypeParameter[] typeParameters = method.getTypeParameters();
    List<ParamInfo> collectedTags = new ArrayList<>();
    for (int i = 0; i < typeParameters.length; i++) {
      PsiTypeParameter typeParameter = typeParameters[i];
      String presentableName = generateOneTypeParameterPresentableName(typeParameter);
      DocTagLocator<PsiDocTag> tagLocator = typeParameterLocator(i);
      ParamInfo parmTag = findDocTag(localTags, "<" + typeParameter.getName() + ">", presentableName, method, tagLocator);
      if (parmTag != null) {
        collectedTags.add(parmTag);
      }
    }
    generateParametersSection(buffer, JavaBundle.message("javadoc.type.parameters"), collectedTags);
  }
private void generateTypeParametersSection(StringBuilder buffer, PsiMethod method, PsiDocComment comment)