@Override
 public boolean isTypeToSkip(ConcreteType type) {
   // Skip anonymous object literals and enum types.
   return type.isInstance()
       && !(type.toInstance().isFunctionPrototype()
           || type.toInstance().instanceType.isInstanceType());
 }
 @Override
 public boolean isInvalidatingType(ConcreteType type) {
   // We will disallow types on functions so that 'prototype' is not renamed.
   // TODO(user): Support properties on functions as well.
   return (type == null)
       || type.isAll()
       || type.isFunction()
       || (type.isInstance() && invalidatingTypes.contains(type.toInstance().instanceType));
 }