code: public Content getTagletOutput(Element holder, TagletWriter writer) {
          Messages messages = writer.configuration().getMessages();
          Utils utils = writer.configuration().utils;
          TypeMirror returnType = utils.getReturnType((ExecutableElement)holder);
          List<? extends DocTree> tags = utils.getBlockTags(holder, name);
  
          //Make sure we are not using @return tag on method with void return type.
          if (returnType != null && utils.isVoid(returnType)) {
              if (!tags.isEmpty()) {
                  messages.warning(holder, "doclet.Return_tag_on_void_method");
              }
              return null;
          }
          if (!tags.isEmpty())
              return writer.returnTagOutput(holder, tags.get(0));
          //Inherit @return tag if necessary.
          List<DocTree> ntags = new ArrayList<>();
          Input input = new DocFinder.Input(utils, holder, this);
          DocFinder.Output inheritedDoc = DocFinder.search(writer.configuration(), input);
          if (inheritedDoc.holderTag != null) {
              CommentHelper ch = utils.getCommentHelper(input.element);
              ch.setOverrideElement(inheritedDoc.holder);
              ntags.add(inheritedDoc.holderTag);
          }
          return !ntags.isEmpty() ? writer.returnTagOutput(holder, ntags.get(0)) : null;
      }
docs: {@inheritDoc}