summaryrefslogtreecommitdiff
path: root/lib/assert.js
diff options
context:
space:
mode:
authorRuben Bridgewater <ruben@bridgewater.de>2018-04-07 14:38:27 +0200
committerRuben Bridgewater <ruben@bridgewater.de>2018-04-10 01:10:12 +0200
commit9c06770443313d1b79b5dc1749ad0063dd97193c (patch)
tree68390280a0681752e205259efa5f5c51c50e2eb0 /lib/assert.js
parent252eb2deb239c940081ac20c38ccb9039f136bd3 (diff)
downloadandroid-node-v8-9c06770443313d1b79b5dc1749ad0063dd97193c.tar.gz
android-node-v8-9c06770443313d1b79b5dc1749ad0063dd97193c.tar.bz2
android-node-v8-9c06770443313d1b79b5dc1749ad0063dd97193c.zip
assert: lazy load acorn
This makes sure acorn is only loaded in case it is necessary. PR-URL: https://github.com/nodejs/node/pull/19863 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'lib/assert.js')
-rw-r--r--lib/assert.js3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/assert.js b/lib/assert.js
index 8d22906c5f..5e69e17515 100644
--- a/lib/assert.js
+++ b/lib/assert.js
@@ -33,7 +33,6 @@ const {
}
} = require('internal/errors');
const { openSync, closeSync, readSync } = require('fs');
-const { parseExpressionAt } = require('internal/deps/acorn/dist/acorn');
const { inspect } = require('util');
const { EOL } = require('os');
const { NativeModule } = require('internal/bootstrap/loaders');
@@ -173,6 +172,8 @@ function getErrMessage(call) {
fd = openSync(filename, 'r', 0o666);
const buffers = getBuffer(fd, line);
const code = Buffer.concat(buffers).toString('utf8');
+ // Lazy load acorn.
+ const { parseExpressionAt } = require('internal/deps/acorn/dist/acorn');
const nodes = parseExpressionAt(code, column);
// Node type should be "CallExpression" and some times
// "SequenceExpression".