code: public Name xClassName(Type t) {
          if (t.hasTag(CLASS)) {
              return names.fromUtf(externalize(t.tsym.flatName()));
          } else if (t.hasTag(ARRAY)) {
              return typeSig(types.erasure(t));
          } else {
              throw new AssertionError("xClassName");
          }
      }
docs: Given a type t, return the extended class name of its erasure in
  external representation.