--- old/src/java.compiler/share/classes/javax/lang/model/element/TypeElement.java 2019-05-28 13:22:30.924597999 -0700 +++ new/src/java.compiler/share/classes/javax/lang/model/element/TypeElement.java 2019-05-28 13:22:30.612753999 -0700 @@ -60,6 +60,25 @@ */ public interface TypeElement extends Element, Parameterizable, QualifiedNameable { /** + * Returns the type defined by this type element, returning the + * prototypical type for an element representing a generic type. + * + *
A generic element defines a family of types, not just one.
+ * If this is a generic element, a prototypical type is
+ * returned which has the element's invocation on the
+ * type variables corresponding to its own formal type parameters.
+ * For example,
+ * for the generic class element {@code C