src/com/google/javascript/rhino/jstype/PrototypeObjectType.java
/**
   * Given the name of a native object property, checks whether the property is
   * present on the object and different from the native one.
   */
Given the name of a native object property, checks whether the property is
present on the object and different from the native one.
Given the name of a native object property checks whether the property is present on the object and different from the native one .
private boolean hasOverriddenNativeProperty(String propertyName) {
    if (isNativeObjectType()) {
      return false;
    }
    JSType propertyType = getPropertyType(propertyName);
    ObjectType nativeType =
        isFunctionType()
            ? registry.getNativeObjectType(JSTypeNative.FUNCTION_PROTOTYPE)
            : registry.getNativeObjectType(JSTypeNative.OBJECT_PROTOTYPE);
    JSType nativePropertyType = nativeType.getPropertyType(propertyName);
    return propertyType != nativePropertyType;
  }
private boolean hasOverriddenNativeProperty ( String propertyName ) { if ( isNativeObjectType ( ) ) { return false ; } JSType propertyType = getPropertyType ( propertyName ) ; ObjectType nativeType = isFunctionType ( ) ? registry . getNativeObjectType ( JSTypeNative . FUNCTION_PROTOTYPE ) : registry . getNativeObjectType ( JSTypeNative . OBJECT_PROTOTYPE ) ; JSType nativePropertyType = nativeType . getPropertyType ( propertyName ) ; return propertyType != nativePropertyType ; }
Given the name of a native object property, checks whether the property is
 present on the object and different from the native one.
Given the name of a native object property checks whether the property is present on the object and different from the native one .