code: private static void simpleClassTypeSignature(Result sb, TypeMirror type) throws IOException
      {
          switch (type.getKind())
          {
              case DECLARED:
                  DeclaredType dt = (DeclaredType) type;
                  TypeElement te = (TypeElement) dt.asElement();
                  nestedSimpleName(sb, te);
                  typeArguments(sb, dt.getTypeArguments());
                  break;
              default:
                  throw new UnsupportedOperationException(type.getKind()+" unsupported");
          }
      }
docs: SimpleClassTypeSignature:
  Identifier TypeArgumentsopt
  @param type