private boolean isObjectTypeWithNonStringifiableKey(JSType type) {
    if (!type.isTemplatizedType()) {
      return false;
    }
    TemplatizedType templatizedType = type.toMaybeTemplatizedType();
    if (templatizedType.getReferencedType().isNativeObjectType()
        && templatizedType.getTemplateTypes().size() > 1) {
      return !isReasonableObjectPropertyKey(templatizedType.getTemplateTypes().get(0));
    } else {
      return false;
    }
  }
private boolean isObjectTypeWithNonStringifiableKey ( JSType type ) { if ( ! type . isTemplatizedType ( ) ) { return false ; } TemplatizedType templatizedType = type . toMaybeTemplatizedType ( ) ; if ( templatizedType . getReferencedType ( ) . isNativeObjectType ( ) && templatizedType . getTemplateTypes ( ) . size ( ) > 1 ) { return ! isReasonableObjectPropertyKey ( templatizedType . getTemplateTypes ( ) . get ( 0 ) ) ; } else { return false ; } }
Checks whether current type is Object type with non-stringifable key.