mirror of
https://github.com/nodejs/node.git
synced 2024-12-01 16:10:02 +01:00
804138093a
This patch introduces a NativeModuleLoader::CompileAndCall that can run a JS script under `lib/` as a function called with a null receiver and arguments specified from the C++ layer. Since all our bootstrappers are wrapped in functions in the source to avoid leaking variables into the global scope anyway, this allows us to remove that extra indentation in the JS source code. As a start we move the compilation and execution of per_context.js to NativeModuleLoader::CompileAndCall(). This patch also changes the return value of NativeModuleLoader::LookupAndCompile() to a MaybeLocal since the caller has to take care of the result being empty anyway. This patch reverts the previous design of having the NativeModuleLoader::Compile() method magically know about the parameters of the function - until we have tooling in-place to guess the parameter names in the source with some annotation, it's more readable to allow the caller to specify the parameters along with the arguments values. PR-URL: https://github.com/nodejs/node/pull/24660 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Gus Caplan <me@gus.host> |
||
---|---|---|
.. | ||
internal | ||
_http_agent.js | ||
_http_client.js | ||
_http_common.js | ||
_http_incoming.js | ||
_http_outgoing.js | ||
_http_server.js | ||
_stream_duplex.js | ||
_stream_passthrough.js | ||
_stream_readable.js | ||
_stream_transform.js | ||
_stream_wrap.js | ||
_stream_writable.js | ||
_tls_common.js | ||
_tls_wrap.js | ||
.eslintrc.yaml | ||
assert.js | ||
async_hooks.js | ||
buffer.js | ||
child_process.js | ||
cluster.js | ||
console.js | ||
constants.js | ||
crypto.js | ||
dgram.js | ||
dns.js | ||
domain.js | ||
events.js | ||
fs.js | ||
http2.js | ||
http.js | ||
https.js | ||
inspector.js | ||
module.js | ||
net.js | ||
os.js | ||
path.js | ||
perf_hooks.js | ||
process.js | ||
punycode.js | ||
querystring.js | ||
readline.js | ||
repl.js | ||
stream.js | ||
string_decoder.js | ||
sys.js | ||
timers.js | ||
tls.js | ||
trace_events.js | ||
tty.js | ||
url.js | ||
util.js | ||
v8.js | ||
vm.js | ||
worker_threads.js | ||
zlib.js |