@Override
    public Integer visitWildcard(WildcardType t, Set<Element> visiting) {
      int result = hashKind(HASH_SEED, t);
      result *= HASH_MULTIPLIER;
      result += (t.getExtendsBound() == null) ? 0 : t.getExtendsBound().accept(this, visiting);
      result *= HASH_MULTIPLIER;
      result += (t.getSuperBound() == null) ? 0 : t.getSuperBound().accept(this, visiting);
      return result;
    }
Returns the type of the innermost enclosing instance, or null if there is none. This is the
same as {@link DeclaredType#getEnclosingType()} except that it returns null rather than NoType
for a static type. We need this because of <a
href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=508222">this bug</a> whereby the Eclipse
compiler returns a value for static classes that is not NoType.
common/src/main/java/com/google/auto/common/MoreTypes.java