diff options
author | Ruben Bridgewater <ruben@bridgewater.de> | 2018-12-20 17:35:40 +0100 |
---|---|---|
committer | Ruben Bridgewater <ruben@bridgewater.de> | 2018-12-27 22:34:47 +0100 |
commit | 5ac30c99a9cc92f563655709d61e47729d441f62 (patch) | |
tree | c6dfa331576d8a0709cee35570d86fba6ffd25e9 /lib/internal/util | |
parent | d385e2cc5a85e150538fd1f41087db9b38943c49 (diff) | |
download | android-node-v8-5ac30c99a9cc92f563655709d61e47729d441f62.tar.gz android-node-v8-5ac30c99a9cc92f563655709d61e47729d441f62.tar.bz2 android-node-v8-5ac30c99a9cc92f563655709d61e47729d441f62.zip |
lib: expose all type checks from the internal types module
Combine all type checks on the internal types module and do not use
the types binding anywhere else anymore. This makes sure all of those
checks exist when required.
PR-URL: https://github.com/nodejs/node/pull/25149
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Denys Otrishko <shishugi@gmail.com>
Diffstat (limited to 'lib/internal/util')
-rw-r--r-- | lib/internal/util/comparisons.js | 4 | ||||
-rw-r--r-- | lib/internal/util/inspect.js | 14 | ||||
-rw-r--r-- | lib/internal/util/types.js | 1 |
3 files changed, 10 insertions, 9 deletions
diff --git a/lib/internal/util/comparisons.js b/lib/internal/util/comparisons.js index 1d959f843b..d072608906 100644 --- a/lib/internal/util/comparisons.js +++ b/lib/internal/util/comparisons.js @@ -1,9 +1,9 @@ 'use strict'; const { compare } = internalBinding('buffer'); -const { isArrayBufferView } = require('internal/util/types'); const { isAnyArrayBuffer, + isArrayBufferView, isDate, isMap, isRegExp, @@ -15,7 +15,7 @@ const { isBooleanObject, isBigIntObject, isSymbolObject -} = internalBinding('types'); +} = require('internal/util/types'); const { getOwnNonIndexProperties, propertyFilter: { diff --git a/lib/internal/util/inspect.js b/lib/internal/util/inspect.js index a6f49c5c05..19eb165b78 100644 --- a/lib/internal/util/inspect.js +++ b/lib/internal/util/inspect.js @@ -27,8 +27,6 @@ const { isStackOverflowError } = require('internal/errors'); -const types = internalBinding('types'); -Object.assign(types, require('internal/util/types')); const { isAnyArrayBuffer, isArrayBuffer, @@ -38,6 +36,8 @@ const { isExternal, isMap, isMapIterator, + isModuleNamespaceObject, + isNativeError, isPromise, isSet, isSetIterator, @@ -61,7 +61,7 @@ const { isFloat64Array, isBigInt64Array, isBigUint64Array -} = types; +} = require('internal/util/types'); const ReflectApply = Reflect.apply; @@ -385,9 +385,9 @@ function getKeys(value, showHidden) { try { keys = Object.keys(value); } catch (err) { - if (types.isNativeError(err) && + if (isNativeError(err) && err.name === 'ReferenceError' && - types.isModuleNamespaceObject(value)) { + isModuleNamespaceObject(value)) { keys = Object.getOwnPropertyNames(value); } else { throw err; @@ -693,7 +693,7 @@ function formatRaw(ctx, value, recurseTimes) { } else if (isWeakMap(value)) { braces[0] = `${getPrefix(constructor, tag, 'WeakMap')}{`; formatter = ctx.showHidden ? formatWeakMap : formatWeakCollection; - } else if (types.isModuleNamespaceObject(value)) { + } else if (isModuleNamespaceObject(value)) { braces[0] = `[${tag}] {`; formatter = formatNamespaceObject; skip = true; @@ -880,7 +880,7 @@ function formatNamespaceObject(ctx, value, recurseTimes, keys) { output[i] = formatProperty(ctx, value, recurseTimes, keys[i], kObjectType); } catch (err) { - if (!(types.isNativeError(err) && err.name === 'ReferenceError')) { + if (!(isNativeError(err) && err.name === 'ReferenceError')) { throw err; } // Use the existing functionality. This makes sure the indentation and diff --git a/lib/internal/util/types.js b/lib/internal/util/types.js index 182625a971..865818c661 100644 --- a/lib/internal/util/types.js +++ b/lib/internal/util/types.js @@ -70,6 +70,7 @@ function isBigUint64Array(value) { } module.exports = { + ...internalBinding('types'), isArrayBufferView, isTypedArray, isUint8Array, |