From cd70cbcbddfe1a577d5cf3f2c1c754359a04b9a2 Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Sun, 13 Jan 2019 01:01:27 +0800 Subject: src: pass cli options to bootstrap/loaders.js lexically Instead of using `internalBinding('config')` which should be used to carry information about build-time options, directly pass the run-time cli options into bootstrap/loaders.js lexically via function arguments. PR-URL: https://github.com/nodejs/node/pull/25463 Reviewed-By: Anna Henningsen Reviewed-By: Refael Ackermann --- lib/internal/bootstrap/loaders.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'lib/internal') diff --git a/lib/internal/bootstrap/loaders.js b/lib/internal/bootstrap/loaders.js index 4554526298..6eed9eab26 100644 --- a/lib/internal/bootstrap/loaders.js +++ b/lib/internal/bootstrap/loaders.js @@ -42,7 +42,7 @@ // This file is compiled as if it's wrapped in a function with arguments // passed by node::LoadEnvironment() /* global process, getBinding, getLinkedBinding, getInternalBinding */ -/* global debugBreak */ +/* global debugBreak, experimentalModules, exposeInternals */ if (debugBreak) debugger; // eslint-disable-line no-debugger @@ -162,7 +162,6 @@ internalBinding('module_wrap').callbackMap = new WeakMap(); // written in CommonJS style. const loaderExports = { internalBinding, NativeModule }; const loaderId = 'internal/bootstrap/loaders'; -const config = internalBinding('config'); // Set up NativeModule. function NativeModule(id) { @@ -177,7 +176,7 @@ function NativeModule(id) { // Do not expose this to user land even with --expose-internals. this.canBeRequiredByUsers = false; } else if (id.startsWith('internal/')) { - this.canBeRequiredByUsers = config.exposeInternals; + this.canBeRequiredByUsers = exposeInternals; } else { this.canBeRequiredByUsers = true; } @@ -316,7 +315,7 @@ NativeModule.prototype.compile = function() { const fn = compileFunction(id); fn(this.exports, requireFn, this, process, internalBinding); - if (config.experimentalModules && this.canBeRequiredByUsers) { + if (experimentalModules && this.canBeRequiredByUsers) { this.proxifyExports(); } -- cgit v1.2.3