code: public static String print(DeprData dd) {
          StringBuilder sb = new StringBuilder();
          sb.append(depr(dd.since, dd.forRemoval))
            .append(' ');
  
          switch (dd.kind) {
              case ANNOTATION_TYPE:
                  sb.append("@interface ");
                  sb.append(unslashify(dd.typeName));
                  break;
              case CLASS:
                  sb.append("class ");
                  sb.append(unslashify(dd.typeName));
                  break;
              case ENUM:
                  sb.append("enum ");
                  sb.append(unslashify(dd.typeName));
                  break;
              case INTERFACE:
                  sb.append("interface ");
                  sb.append(unslashify(dd.typeName));
                  break;
  
              case ENUM_CONSTANT:
              case FIELD:
                  sb.append(unslashify(dd.typeName))
                    .append('.')
                    .append(dd.nameSig);
                  break;
              case CONSTRUCTOR:
                  Matcher cons = DESC_PAT.matcher(dd.nameSig);
                  sb.append(unslashify(dd.typeName));
                  if (cons.matches()) {
                      sb.append('(')
                        .append(parms(cons.group("args")))
                        .append(')');
                  } else {
                      sb.append('.')
                        .append(dd.nameSig);
                  }
                  break;
              case METHOD:
                  Matcher meth = DESC_PAT.matcher(dd.nameSig);
                  if (meth.matches()) {
                      sb.append(desc(meth.group("return")))
                        .append(' ')
                        .append(unslashify(dd.typeName))
                        .append('.')
                        .append(meth.group("name"))
                        .append('(')
                        .append(parms(meth.group("args")))
                        .append(')');
                  } else {
                      sb.append(unslashify(dd.typeName))
                        .append('.')
                        .append(dd.nameSig);
                  }
                  break;
          }
  
          return sb.toString();
      }
docs: Pretty-prints the data contained in the given DeprData object.
  
  @param dd the deprecation data object
  @return the formatted string