summaryrefslogtreecommitdiff
path: root/lib/internal
diff options
context:
space:
mode:
authorRuben Bridgewater <ruben@bridgewater.de>2018-12-28 02:29:18 +0100
committerDaniel Bevenius <daniel.bevenius@gmail.com>2019-01-11 07:32:17 +0100
commit1ab659a141a280161fb4192778361fc4f02c7371 (patch)
treee08776210ef6c56e8782265c52834ffd96a02f34 /lib/internal
parent76fa37af75eb133742d62dad9d15810645d43a0c (diff)
downloadandroid-node-v8-1ab659a141a280161fb4192778361fc4f02c7371.tar.gz
android-node-v8-1ab659a141a280161fb4192778361fc4f02c7371.tar.bz2
android-node-v8-1ab659a141a280161fb4192778361fc4f02c7371.zip
util: simpler module namespace code
This removes a special casing for this data type in the main function. PR-URL: https://github.com/nodejs/node/pull/25255 Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'lib/internal')
-rw-r--r--lib/internal/util/inspect.js17
1 files changed, 7 insertions, 10 deletions
diff --git a/lib/internal/util/inspect.js b/lib/internal/util/inspect.js
index ac6eb4fca1..8516755fa2 100644
--- a/lib/internal/util/inspect.js
+++ b/lib/internal/util/inspect.js
@@ -557,7 +557,6 @@ function formatRaw(ctx, value, recurseTimes, typedArray) {
let braces;
let noIterator = true;
let i = 0;
- let skip = false;
const filter = ctx.showHidden ? ALL_PROPERTIES : ONLY_ENUMERABLE;
let extrasType = kObjectType;
@@ -701,7 +700,6 @@ function formatRaw(ctx, value, recurseTimes, typedArray) {
} else if (isModuleNamespaceObject(value)) {
braces[0] = `[${tag}] {`;
formatter = formatNamespaceObject;
- skip = true;
} else if (isBoxedPrimitive(value)) {
let type;
if (isNumberObject(value)) {
@@ -761,11 +759,9 @@ function formatRaw(ctx, value, recurseTimes, typedArray) {
const indentationLvl = ctx.indentationLvl;
try {
output = formatter(ctx, value, recurseTimes, keys);
- if (skip === false) {
- for (i = 0; i < keys.length; i++) {
- output.push(
- formatProperty(ctx, value, recurseTimes, keys[i], extrasType));
- }
+ for (i = 0; i < keys.length; i++) {
+ output.push(
+ formatProperty(ctx, value, recurseTimes, keys[i], extrasType));
}
} catch (err) {
return handleMaxCallStackSize(ctx, err, constructor, tag, indentationLvl);
@@ -875,9 +871,8 @@ function formatError(value) {
}
function formatNamespaceObject(ctx, value, recurseTimes, keys) {
- const len = keys.length;
- const output = new Array(len);
- for (var i = 0; i < len; i++) {
+ const output = new Array(keys.length);
+ for (var i = 0; i < keys.length; i++) {
try {
output[i] = formatProperty(ctx, value, recurseTimes, keys[i],
kObjectType);
@@ -897,6 +892,8 @@ function formatNamespaceObject(ctx, value, recurseTimes, keys) {
ctx.stylize('<uninitialized>', 'special');
}
}
+ // Reset the keys to an empty array. This prevents duplicated inspection.
+ keys.length = 0;
return output;
}