private static boolean validateTypes(Iterable<? extends TypeMirror> types) {
    for (TypeMirror type : types) {
      if (!validateType(type)) {
        return false;
      }
    }
    return true;
  }
Returns true if all types referenced by the given element are defined. The exact meaning of
this depends on the kind of element. For packages, it means that all annotations on the package
are fully defined. For other element kinds, it means that types referenced by the element,
anything it contains, and any of its annotations element are all defined.
common/src/main/java/com/google/auto/common/SuperficialValidation.java