@Override
      protected TypeMirror defaultAction(TypeMirror e, Void p) {
        return e;
      }
Type elements that we are currently visiting. This helps us stay out of trouble when
looking at something like {@code Enum<E extends Enum<E>>}. At the second {@code Enum} we
will just return raw {@code Enum}.
common/src/main/java/com/google/auto/common/Overrides.java