<commit_before>var isNative = require("is_native"),
    getPrototypeOf = require("get_prototype_of"),
    isNullOrUndefined = require("is_null_or_undefined");


var nativeHasOwnProp = Object.prototype.hasOwnProperty,
    has;


if (isNative(nativeHasOwnProp)) {
    has = function has(object, key) {
        if (isNullOrUndefined(object)) {
            return false;
        } else {
            return nativeHasOwnProp.call(object, key);
        }
    };
} else {
    has = function has(object, key) {
        var proto;

        if (isNullOrUndefined(object)) {
            return false;
        } else {
            proto = getPrototypeOf(object);

            if (isNullOrUndefined(proto)) {
                return key in object;
            } else {
                return (key in object) && (!(key in proto) || proto[key] !== object[key]);
            }
        }
    };
}


module.exports = has;<commit_msg>updates<commit_after>var isNative = require("is_native"),
    getPrototypeOf = require("get_prototype_of"),
    isNullOrUndefined = require("is_null_or_undefined");


var nativeHasOwnProp = Object.prototype.hasOwnProperty,
    baseHas;


module.exports = has;


function has(object, key) {
    if (isNullOrUndefined(object)) {
        return false;
    } else {
        return baseHas(object, key);
    }
}

if (isNative(nativeHasOwnProp)) {
    baseHas = function baseHas(object, key) {
        return nativeHasOwnProp.call(object, key);
    };
} else {
    baseHas = function baseHas(object, key) {
        var proto = getPrototypeOf(object);

        if (isNullOrUndefined(proto)) {
            return key in object;
        } else {
            return (key in object) && (!(key in proto) || proto[key] !== object[key]);
        }
    };
}
{'fraction_non_alphanumeric': 0.12129840546697039, 'fraction_numerical': 0.0, 'mean_word_length': 2.3984526112185685, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5470385', 'n_tokens_mistral': 528, 'n_tokens_neox': 521, 'n_words': 113}