From 3390d9309b1025ccc253e01c5dcbf4f186c5b15f Mon Sep 17 00:00:00 2001 From: John-David Dalton Date: Fri, 7 Apr 2017 08:19:32 -0700 Subject: [PATCH] Remove internal `hasPath`. --- .internal/hasPath.js | 39 --------------------------------------- 1 file changed, 39 deletions(-) delete mode 100644 .internal/hasPath.js diff --git a/.internal/hasPath.js b/.internal/hasPath.js deleted file mode 100644 index 221a0f0ca..000000000 --- a/.internal/hasPath.js +++ /dev/null @@ -1,39 +0,0 @@ -import castPath from './castPath.js' -import isArguments from '../isArguments.js' -import isIndex from './isIndex.js' -import isLength from '../isLength.js' -import toKey from './toKey.js' - -/** - * Checks if `path` exists on `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Array|string} path The path to check. - * @param {Function} hasFunc The function to check properties. - * @returns {boolean} Returns `true` if `path` exists, else `false`. - */ -function hasPath(object, path, hasFunc) { - path = castPath(path, object) - - let index = -1 - let { length } = path - let result = false - let key - - while (++index < length) { - key = toKey(path[index]) - if (!(result = object != null && hasFunc(object, key))) { - break - } - object = object[key] - } - if (result || ++index != length) { - return result - } - length = object == null ? 0 : object.length - return !!length && isLength(length) && isIndex(key, length) && - (Array.isArray(object) || isArguments(object)) -} - -export default hasPath